值误差,真值误差,模糊误差

时间:2014-03-18 14:13:50

标签: python arrays numpy python-2.6

使用此代码时

 for i in range(len(data)):
   if Ycoord >= Y_west and Xcoord == X_west:
        flag = 4

我得到了这个ValueError

如果Ycoord> = Y_west且Xcoord == X_west: ValueError:具有多个元素的数组的真值是不明确的。使用a.any()或a.all()

然后我使用上述限制

有关如何保持限制并继续撰写文件的任何帮助?

1 个答案:

答案 0 :(得分:1)

变量YcoordXcoord可能是numpy.ndarray个对象。您必须使用数组兼容的and运算符来检查您的条件的所有值。您可以创建一个标志数组,并在条件为4的所有位置将值设置为True

check = np.logical_and(Ycoord >= Y_west, Xcoord == X_west)
flag = np.zeros_like(Ycoord)
flag[check] = 4

或者您必须在代码中按值进行测试:

for i in range(len(data)):
    if Ycoord[i] >= Y_west and Xcoord[i] == X_west:
        flag = 4