我有一个带有变量的熊猫数据框,当我打印它时,它显示为主要包含NaN。它是dtype对象。但是,当我运行isnull函数时,它在任何地方都返回“FALSE”。我想知道为什么NaN值没有被编码为缺失,并且如果有任何方法将它们转换为正确处理的缺失值。无法在熊猫数据帧中处理NaN
谢谢。
我有一个带有变量的熊猫数据框,当我打印它时,它显示为主要包含NaN。它是dtype对象。但是,当我运行isnull函数时,它在任何地方都返回“FALSE”。我想知道为什么NaN值没有被编码为缺失,并且如果有任何方法将它们转换为正确处理的缺失值。无法在熊猫数据帧中处理NaN
谢谢。
你NaN
是字符串
df = pd.DataFrame(dict(A=['Not NaN', 'NaN', np.nan]))
print(df)
A
0 Not NaN
1 NaN
2 NaN
缺少了什么
print(df.isnull())
A
0 False
1 False
2 True
字符串不丢失,np.nan
是。
您可以
df.A.mask(df.A.eq('NaN')).isnull()
0 False
1 True
2 True
Name: A, dtype: bool
从piRSquared,一个可能的方法来治疗NaN值(如果适用于您的问题),建立在mask
琴弦是NaN的输入转换成列的中位数。
DF = df.fillna(df.mean())
谢谢,好像另一种选择是df.replace( '的NaN',np.nan) –