我想在数据框 a 中添加一列,a = pd.DataFrame([[1,2],[3,4]],columns=['A','B'])if a['B'] > a['A']: a['C']='是'else: a['C']='否'ValueError:系列的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。
3 回答

慕田峪4524236
TA贡献1875条经验 获得超5个赞
使用numpy.where:
#swapped 2,1
a = pd.DataFrame([[2,1],[3,4]],columns=['A','B'])
a['C'] = np.where(a['B']>a['A'], '是','否')
print (a)
A B C
0 2 1 否
1 3 4 是
您的代码问题是如果使用:
print (a['B']>a['A'])
0 False
1 True
dtype: bool
它返回布尔掩码并且if无法决定要做什么。
添加回答
举报
0/150
提交
取消