我试图在Pandas DataFrame列中将NaN转换为0,并且“where”函数的行为与我期望的相反。pandas其中函数行为与我所期望的相反
下面的代码将在索引4,5,6创建包含一列与NaN的数据帧和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
我用
df.where(df.isnull() == True,0)
期待其中NaN值分别为到被改为0.相反,发生的事情是一切,但NaN的变为0.
任何人都可以解释背后的逻辑在哪里工作?