歡迎您光臨本站 註冊首頁

Python drop方法刪除列之inplace參數實例

←手機掃碼閱讀     e36605 @ 2020-06-28 , reply:0

drop方法有一個可選參數inplace,表明可對原數組作出修改並返回一個新數組。不管參數默認為False還是設置為True,原數組的內存值是不會改變的,區別在於原數組的內容是否直接被修改。默認為False,表明原數組內容並不改變,如果我們需要得到改變後的內容,需要將新結果賦給一個新的數組,即data = data.drop(['test','test2'],1)。

如果將inplace值設定為True,則原數組內容直接被改變。

測試程序如下

  #增加兩列空值  import numpy as np  data["test"] = np.nan  data["test2"] = np.nan     name	gender	age	test2	test  0	jerry	M	36	NaN	NaN  1	emma	F	23	NaN	NaN  2	tony	M	34	NaN	NaN  4	bob	M	20	NaN	NaN     #查看此時data的內存地址  id(data)  128971088     #刪除這兩列,inplace默認為False  id(data.drop(['test','test2'],1))  128971888     #查看data,發現數據並未改變  data  name	gender	age	test	test2  0	jerry	M	36	NaN	NaN  1	emma	F	23	NaN	NaN  2	tony	M	34	NaN	NaN  4	bob	M	20	NaN	NaN     #查看data的ID  id(data)  128971088     #刪除這兩列,inplace設置為False  id(data.drop(['test','test2'],1,inplace = True))  1545984728     #查看data,數據已經改變  data  name	gender	age	test	test2  0	jerry	M	36	NaN	NaN  1	emma	F	23	NaN	NaN  2	tony	M	34	NaN	NaN  4	bob	M	20	NaN	NaN     #查看data的ID  id(data)  128971088

 

補充知識:python 使用del和drop方法刪除DataFrame的列,使用drop方法一次刪除多列

使用del和drop方法刪除DataFrame中的列,使用drop方法一次刪除多列

  # 使用del, 一次只能刪除一列,不能一次刪除多列  # 只能使用 del df['密度'], 不能使用 del df[['密度', '含糖率']]     del df['密度']     # del df[['密度', '含糖率']] 報錯  # 使用drop,有三種方法:     dt = dt.drop(['密度', '含糖率'], axis=1) # axis=1 表示刪除列,['密度', '含糖率'] 要刪除的col的列表,可一次刪除多列     dt.drop(['密度', '含糖率'], axis=1, inplace=True) # inplace=True, 直接從內部刪除     dt.drop(dt.columns[[0, 4, 8]], axis=1, inplace=True) # dt.columns[[0, 4, 8]] 直接使用索引查找列


   


[e36605 ] Python drop方法刪除列之inplace參數實例已經有241次圍觀

http://coctec.com/docs/python/shhow-post-240053.html