從Pandas DataFrame 中刪除欄位
雖然在DataFrame 本身上使用del 關鍵字(del df.column_name) 可能看起來很直觀,這不是在Pandas 中刪除列的建議方法。可能會發生意外錯誤,因為 del 關鍵字從 DataFrame 物件中刪除整個列,而不僅僅是其值。
首選方法:使用 drop() 方法
從 DataFrame 中刪除列的正確方法是透過 drop() 方法。它允許精確定位和控制刪除過程。一般語法為:
df = df.drop('column_name', axis=1)
其中 1 表示列的軸編號(0 表示行)。此方法可確保僅刪除指定列,而保留剩餘資料不變。
替代語法:使用 columns 關鍵字
drop() 的替代語法是使用 columns關鍵字:
df = df.drop(columns=['column_nameA', 'column_nameB'])
此方法在刪除多個時特別有用
就地修改
如果您希望就地修改原始 DataFrame而不重新分配,請使用:
df.drop('column_name', axis=1, inplace=True)
按列號刪除
按位置刪除列(number) 而不是標籤,請使用:
df = df.drop(df.columns[[0, 1, 3]], axis=1) # df.columns is zero-based pd.Index
使用文字文法
與columns 關鍵字類似,您也可以使用文字語法來指定要指定的欄位被刪除:
df.drop(['column_nameA', 'column_nameB'], axis=1, inplace=True)
以上是如何安全地從 Pandas DataFrame 中刪除列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!