私はPandas DataFrameカラムでNaNを0に変換しようとしていますが、 "where"関数は期待したものとは逆の動作をしています。pandasどこが期待通りの動作をしますか
次のコードがNaNのインデックス4,5,6及び7
from collections import Counter
import pandas as pd
x = Counter(pd.np.random.choice(24,2000))
df = pd.DataFrame({'x':x})
df.loc[4:7,'x'] = pd.np.nan
df
にして一つの列を含むデータフレームを作成します。私はNaN値がしていたところ期待
df.where(df.isnull() == True,0)
を使用代わりに0に変更されました。何が起こったかは、NaNがすべて0に変更されたことです。
誰がどのように動作するのかの背後にある論理を説明できますか?