我想比较列表中的项目,这是我的代码:
for i in range(200):
if g[i]==1 and d[4]==1:
TP += 1
elif g[i]==1 and d[4]==0:
FP += 1
elif g[i]==0 and d[4]==1:
FN += 1
elif g[i]==0 and d[4]==0:
TN += 1
我得到了这个错误:
具有多个元素的数组的真值是不明确的。 使用a.any()或a.all()
我不知道如何使用上面推荐的语法,如何解决它,谢谢。
答案 0 :(得分:3)
正如作者在评论中所提到的,d
是一个二维Numpy数组。
that问题的答案解释了将Numpy中的多维数组进行比较需要进行您想要执行的比较(任何元素是按位为真或所有元素都是按位真)。
这就是您必须使用(g[i] - d[4]).any()
或(g[i] - d[4]).all()
指定所需比较的原因。