我见过类似的问题,但我面对的情况略有不同。我试图根据列是否少于300个空值来选择数据框中列的子集。
df[df.columns[df.isnull().any()]].isnull().sum()<300
我已经成功创建了这个布尔数组,但是如何将这些信息传回给只选择df列,这是真的?
答案 0 :(得分:4)
让我们使用doc 中的thresh
要求许多非NA值。
df.dropna(axis = 1,thresh = len(df)-300)
答案 1 :(得分:1)
any
是多余的,您可以只使用isnull
/ isna
和sum
执行此操作:
v = df.isna().sum().lt(300)
df[v.index[v]]
或者,
df.loc[:, df.isna().sum().lt(300)]