python - For循环根据空值删除列
问题描述
您好,我有一个名为 lc 的数据框。并且数据框的形状是 (235607,146) 我能够编写一个代码来显示每列中空值的百分比 ( np.sum(lc.isnull())/lc.shape[0]*100
)。现在我需要帮助来编写一个 for 循环来删除所有空值大于 70% 的列
解决方案
您可以使用boolean
索引。用于mean
检查每列中空值的百分比。不符合条件的列false
将被退回,它们不会被列入清单。
import numpy as np
df.loc[:,df.isin([0,' ',np.nan,None]).mean()<0.7]
推荐阅读
- javascript - FlatList 的 Horizontal 效果不佳 - React Native?
- opengl - OpenGL 统一块语法
- python-3.x - 如何在具有日期差异(DATETIME - DATETIME)的值之间进行条件比较?
- microsoft-graph-api - MS Graph,Calendar deltalink 在未删除时将约会显示为已删除
- ios - iOS UICollectionView 动态切换单元格NIB
- excel - 如何使用 VBA 从网站上抓取位置名称
- python-3.x - 通过 odoo v10 迁移到 odoo v13 在 Onchange 函数中出现错误
- python - Read multiple excel files in order from folder with Python
- angular - 从祖父类设置子列表值
- c# - 带有 Xaml.Behaviors.Wpf 的 Caliburn Micro,无法在事件触发器中包含操作消息