1

When using this code

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

I get this ValueError

if Ycoord >= Y_west and Xcoord == X_west: ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

then i use the above restriction

Any help on how i can keep my restriction and go on with the writing of my file?

Saullo G. P. Castro
  • 56,802
  • 26
  • 179
  • 234
George
  • 128
  • 3
  • 12

1 Answers1

1

The variables Ycoord and Xcoord are probably numpy.ndarray objects. You have to use the array compatible and operator to check all its values for your condition. You can create a flag array and set the values to 4 in all places where your conditional is True:

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

or you have to test value-by-value in your code doing:

for i in range(len(data)):
    if Ycoord[i] >= Y_west and Xcoord[i] == X_west:
        flag = 4
Saullo G. P. Castro
  • 56,802
  • 26
  • 179
  • 234