Python drop方法刪除列之inplace參數實例
drop方法有一個可選參數inplace,表明可對原數組作出修改并返回一個新數組。不管參數默認為False還是設置為True,原數組的內存值是不會改變的,區別在于原數組的內容是否直接被修改。默認為False,表明原數組內容并不改變,如果我們需要得到改變后的內容,需要將新結果賦給一個新的數組,即data = data.drop([’test’,’test2’],1)。
如果將inplace值設定為True,則原數組內容直接被改變。
測試程序如下
#增加兩列空值import numpy as npdata['test'] = np.nandata['test2'] = np.nan namegenderagetest2test0jerryM36NaNNaN1emmaF23NaNNaN2tonyM34NaNNaN4bobM20NaNNaN #查看此時data的內存地址id(data)128971088 #刪除這兩列,inplace默認為Falseid(data.drop([’test’,’test2’],1))128971888 #查看data,發現數據并未改變datanamegenderagetesttest20jerryM36NaNNaN1emmaF23NaNNaN2tonyM34NaNNaN4bobM20NaNNaN #查看data的IDid(data)128971088 #刪除這兩列,inplace設置為Falseid(data.drop([’test’,’test2’],1,inplace = True))1545984728 #查看data,數據已經改變datanamegenderagetesttest20jerryM36NaNNaN1emmaF23NaNNaN2tonyM34NaNNaN4bobM20NaNNaN #查看data的IDid(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]] 直接使用索引查找列
以上這篇Python drop方法刪除列之inplace參數實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章:
