2017-05-30 15 views
2

私は変数を持つpandasデータフレームを持っています。これは、印刷するとNaNを含むように見えます。これはdtypeオブジェクトです。しかし、isnull関数を実行すると、どこでも "FALSE"が返されます。なぜNaN値が欠損としてコード化されていないのか、適切に扱われている欠損値にそれらを変換する方法があるのだろうかと思います。pandasデータフレームのNaNを扱うことができません

ありがとうございます。

答えて

2

あなた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です。

あなたはNaN値(自分の問題に該当する場合)の治療に

piRSquared、可能な方法からのビルド
df.A.mask(df.A.eq('NaN')).isnull() 

0 False 
1  True 
2  True 
Name: A, dtype: bool 
+0

別のオプションは、df.replace( 'NaNの'、np.nan)であるようおかげで、それはそうです –

-1

で文字列をmaskすることができますが、列の中央にはNaN入力を変換することです。

DF = df.fillna(df.mean())

関連する問題