Tengo una matriz numpy unidimensional c
que se supone que debe llenarse con los contenidos de a + b
. Estoy ejecutando primero a + b
en un dispositivo usando PyOpenCL
.Comprobando si todos los valores en una matriz numpy son iguales
Quiero determinar rápidamente la corrección de la matriz de resultados c
en python usando numpy
slicing.
Esto es lo que tengo actualmente
def python_kernel(a, b, c):
temp = a + b
if temp[:] != c[:]:
print "Error"
else:
print "Success!"
pero me sale el error:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Pero parece a.any
o a.all
se acaba de determinar si los valores no son 0.
¿Qué debo hacer si deseo probar si todos los escaladores de la matriz numpy
temp
son iguales a todos los valores en la matriz numpy
c
?
'all_values_are_same = all (your_array [0] == your_array):' Lo que hace es devolver una lista de booleana si cada valor es igual al primer valor, y afirma que todos son verdaderos. –