刪除Pandas DataFrame 中的欄位
雖然使用del df['column_name'] 成功刪除列,但嘗試使用del df.column_name.失敗。為了理解為什麼會有這種差異,我們需要檢查 Pandas 的底層資料結構。
Pandas 的資料結構
Pandas DataFrame 由兩個主要元件組成:索引 (行標籤)和標籤的欄位。使用 df.column_name 存取列只會檢索與該列關聯的系列,而不是實際的列物件本身。因此,del df.column_name 不會從 DataFrame 中刪除該欄位。
建議的刪除方法
要從 DataFrame 中刪除列,建議的方法是使用降低()。此方法允許精確控制軸(行或列),並支援列標籤和索引。
df = df.drop('column_name', axis=1) # Use column label df = df.drop(df.columns[[0, 1, 3]], axis=1) # Use column indexes
要刪除列而不重新分配,請使用 inplace=True。
df.drop('column_name', axis=1, inplace=True)
替代語法
drop() 方法也支援用於指定列的文字語法
df.drop(['column_nameA', 'column_nameB'], axis=1, inplace=True)
透過使用這些建議的方法,您可以有效、清晰、精確地從Pandas DataFrame 中刪除列。
以上是為什麼 `del df.column_name` 無法刪除 Pandas DataFrame 中的欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!