Ger*_*ard 47 python nan pandas
我有一个pandas数据帧(df),我想做的事情如下:
newdf = df[(df.var1 == 'a') & (df.var2 == NaN)]
Run Code Online (Sandbox Code Playgroud)
我已经尝试用np.NaN,'NaN'或者'nan'等等替换NaN ,但没有任何评估为True.没有pd.NaN.
我可以df.fillna(np.nan)在评估上面的表达式之前使用但是感觉很乱,我想知道它是否会干扰其他依赖能够识别熊猫格式NaN的熊猫操作.
我觉得应该对这个问题有一个简单的答案,但不知怎的,它已经躲过了我.任何建议表示赞赏.谢谢.
Mar*_*eld 54
这不起作用,因为NaN它不等于任何东西,包括NaN.请pd.isnull(df.var2)改用.
Gil*_*gio 37
最简单的解决方案:
filtered_df = df[df['var2'].isnull()]
Run Code Online (Sandbox Code Playgroud)
这会过滤并为您提供在'var2'列中仅包含NaN值的行.