我有两个变量,分别为s1 = 0
和s2 = 0
,并且有一个数据框(有更多列,但与这种情况无关):
xyz
0 2
1 2
2 2
3 0
4 0
我尝试使用np.where
创建一个新列:
df['c'] = np.where((df['xyz']>0) & (s1 > 0) & (s2 > 0), 1/s1, 0)
但是它会引发ZeroDivisionError。为什么计算True
大小写,即使条件为False
。我应该如何获得理想的结果?