Python 如果一列中的值为null,则在另一列中提供另一个值
我有以下数据帧:Python 如果一列中的值为null,则在另一列中提供另一个值,python,pandas,null,Python,Pandas,Null,我有以下数据帧: >>> name age grade pass 0 Dana 23 95 yes 1 Emaa 24 yes 2 Don 25 99 yes 3 Daniela 24 85 yes 4 Fred 21 yes 我想创建一个条件,以便在列级别为null时,列传递中的值将为no: >>> name age grade pass 0
>>> name age grade pass
0 Dana 23 95 yes
1 Emaa 24 yes
2 Don 25 99 yes
3 Daniela 24 85 yes
4 Fred 21 yes
我想创建一个条件,以便在列级别为null时,列传递中的值将为no:
>>> name age grade pass
0 Dana 23 95 yes
1 Emaa 24 no
2 Don 25 99 yes
3 Daniela 24 85 yes
4 Fred 21 no
我试过这样做:
if df['grade'].isna():
df['pass']='no'
但我得到了一个错误:
ValueError:序列的真值不明确。使用a.empty,
a、 bool()、a.item()、a.any()或a.all()
我怎样才能得到预期的结果?我做错了什么?你需要做
np.where
或mask
df['pass'] = df['pass'].mask(df['grade'].isna(), 'no')
谢谢你分享这个Ben,你能告诉我你是如何从样本中创建df的吗?我试图复制并使用
read_clipboard
,但这并没有占用最后一个字段之间的空间,因为它是NaN
,任何指导都将受到欢迎。@RavinderSingh13我没有创建dataframe~,只是基于他的预期输出,解决方案应该非常明显~