首頁  >  文章  >  後端開發  >  如何使用連結賦值和 loc 函數根據條件值修改 Pandas DataFrame 中的特定值?

如何使用連結賦值和 loc 函數根據條件值修改 Pandas DataFrame 中的特定值?

Patricia Arquette
Patricia Arquette原創
2024-10-26 03:31:02912瀏覽

How can I modify specific values in a Pandas DataFrame based on conditional values using chaining assignment and the loc function?

連結賦值與Pandas 的Loc 函數以條件值修改資料

在Python 的Pandas 函式庫中,處理資料運算可能會給以下人員帶來挑戰那些習慣其他程式設計工具的人。本文解決了有關迭代 Pandas 資料以根據條件修改特定值的特定查詢。

問題:

目前的任務是修改兩個值,FirstName和 LastName,在 DataFrame 中基於 ID 欄位中的符合值。具體來說,當 ID 等於 103 時,FirstName 和 LastName 應分別替換為「Matt」和「Jones」。

解:替代方法

方法1:使用Loc 進行切片和索引

要依照Pandas 中的條件值修改數據,有效的方法是使用loc 函數。此函數允許根據指定條件進行邏輯評估並覆寫資料。

<code class="python">import pandas
df = pandas.read_csv("test.csv")
df.loc[df.ID == 103, 'FirstName'] = "Matt"
df.loc[df.ID == 103, 'LastName'] = "Jones"</code>

方法2:鍊式賦值

另一種方法是鍊式賦值,其中涉及賦值根據條件將值賦給DataFrame 中的特定元素。儘管這種方法因其潛在的不穩定性而不被鼓勵,但它對於理解仍然有用:

<code class="python">import pandas
df = pandas.read_csv("test.csv")
df['FirstName'][df.ID == 103] = "Matt"
df['LastName'][df.ID == 103] = "Jones"</code>

以上是如何使用連結賦值和 loc 函數根據條件值修改 Pandas DataFrame 中的特定值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn