【发布时间】:2020-05-09 23:18:36
【问题描述】:
我有一种情况,我需要删除大量缺失值较高的数据框列。我创建了一个新的数据框,它为我提供了原始数据集中的缺失值和缺失值的比率。
我的原始数据集 - data_merge2 如下所示:
A B C D
123 ABC X Y
123 ABC X Y
NaN ABC NaN NaN
123 ABC NaN NaN
245 ABC NaN NaN
345 ABC NaN NaN
计数数据集看起来像这样,它给了我缺失的计数和比率:
missing_count missing_ratio
C 4 0.10
D 4 0.66
我用来创建计数数据集的代码如下所示:
#Only check those columns where there are missing values as we have got a lot of columns
new_df = (data_merge2.isna()
.sum()
.to_frame('missing_count')
.assign(missing_ratio = lambda x: x['missing_count']/len(data_merge2)*100)
.loc[data_merge2.isna().any()] )
print(new_df)
现在我想从原始数据框中删除缺失率 >50% 的列 我应该如何做到这一点?
【问题讨论】:
标签: python-3.x pandas missing-data