对于数据帧df
,我试图用值2017-01-01
填充列b
,如果列a
中的值为空NaNs
或Others
:
df = pd.DataFrame({'a':['Coffee','Muffin','Donut','Others',pd.np.nan, pd.np.nan]})
a
0 Coffee
1 Muffin
2 Donut
3 Others
4 NaN
5 NaN
预期结果如下:
a b
0 Coffee 2017-01-01
1 Muffin 2017-01-01
2 Donut 2017-01-01
3 Others NaN
4 NaN NaN
5 NaN NaN
我尝试过的不排除NaNs
:
df.loc[~df['a'].isin(['nan', 'Others']), 'b'] = '2017-01-01'
a b
0 Coffee 2017-01-01
1 Muffin 2017-01-01
2 Donut 2017-01-01
3 Others NaN
4 NaN 2017-01-01
5 NaN 2017-01-01
谢谢!你知道吗
用
np.nan
代替nan
:或者在比较之前,用
Others
替换缺少的值:看看这个:
相关问题 更多 >
编程相关推荐