NaN导致sklearn模型无法运行

时间:2018-06-22 00:03:07

标签: python pandas scikit-learn

我有一个数据集,我正在尝试使用sklearn进行逻辑回归,但是该数据集包含NaN会引起问题。我在网上看到的大多数问题都是关于填补缺失值的问题。但是,我对输入缺失值感到不舒服。有没有办法删除数据框中的所有NaN值,或仅包括所有列中都没有NaN的行?

我最终创建了一个新的数据框,只保留所有列中都有答案的行。

df2 = df1[(df1['var1']>=0) & (df1['var2']>=0) & (df1['var3']>=0)]

但是如果我有100列怎么办。最好和最简单的方法是什么?

2 个答案:

答案 0 :(得分:2)

删除至少一个条目为NaN的行:

df2 = df1.dropna(axis=0, how='any')

请注意,上面的参数值是默认值,但我还是将它们包括在内,只是为了使其更清楚。

答案 1 :(得分:0)

allaxis =1一起使用

df1 = df1.loc[df1.gt(0).all(1),:]