本来想找删除满足某个条件的列的操作,发现在网上没找到,所以自己就简单写了个。
这个操作我暂时就还没发现比较直接的方法,不过转个弯,效果也一样。
模板:
for i in df.columns:
if pd.isnull(df[i]).sum()>(0.2*df.shape[0]):
df.drop(i,axis=1,inplace=True)
这个代码其实涵盖了挺多数据分析预处理的常用方法:
第一,这个df是datarame,删除满足缺失值达到20%的某些列
第二,找某列的缺失值,得到某列缺失值数量,同样适用于整个dataframe。
第三,drop删除操作,drop的功能相对于del多,能做的事耶比较多,当然del就很纯粹,用起来很爽,drop的参数inplace得设置称True,意思就是在原表修改。
第四,注意代码的易改性和通用性,尽量不要用具体的数字来去放在一段程序里,像这个df.shape[0]
,多使用类似于这种,可以增强代码的易改性和通用性,不要懒了一下,却多做了很多繁琐的修改。