首頁 >後端開發 >Python教學 >如何透過索引有效地設定 Pandas DataFrame 單元格中的值?

如何透過索引有效地設定 Pandas DataFrame 單元格中的值?

Linda Hamilton
Linda Hamilton原創
2024-11-30 18:02:12580瀏覽

How to Efficiently Set Values in Pandas DataFrame Cells by Index?

依索引設定Pandas DataFrame 單元格中的值

要依照其索引在Pandas DataFrame 中設定特定單元格值,請考慮以下內容:

使用df.set_value(索引, 列, value)

df.set_value() 允許您使用索引直接為儲存格指派值。但是,請注意,此方法將被棄用。

# Correct way:
df.set_value('C', 'x', 10)

使用 df.at[index, column] = value

首選替代方法是使用 df .at[] 直接更新單元格值。此方法效率更高,並且提供更簡潔的語法。

df.at['C', 'x'] = 10

使用鍊式索引

注意:雖然它看起來可能很直觀使用鍊式索引來設定單元格值(例如,df.xs('C')['x'] = 10),該方法僅修改行或列的副本。若要直接修改原始 DataFrame,請使用 df.set_value() 或 df.at[]。

為什麼鍊式索引失敗

鍊式索引(例如df. xs('C')['x'] = 10) 建立一個新的DataFrame 對象,並引用原始資料幀資料。對此新物件所做的指派不會傳播到原始 DataFrame。

效能

基準顯示df.set_value() 是最快的選項,其次是df' x' = 10 且df.at['C', ' x'] = 10。但是,效能差異可能會有所不同,具體取決於DataFrame 大小和複雜性。

以上是如何透過索引有效地設定 Pandas DataFrame 單元格中的值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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