Ho una matrice monodimensionale numerica c
che deve essere riempita con il contenuto di a + b
. Per prima cosa eseguo a + b
su un dispositivo utilizzando PyOpenCL
.Test se tutti i valori in una matrice numpy sono uguali
Voglio determinare rapidamente la correttezza dell'array di risultati c
in python utilizzando slicing numpy
.
Questo è quello che ho attualmente
def python_kernel(a, b, c):
temp = a + b
if temp[:] != c[:]:
print "Error"
else:
print "Success!"
ma ho l'errore:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Ma sembra a.any
o a.all
sarà solo determinare se i valori non sono 0.
Cosa devo fare se voglio testare se tutti gli scaler nell'array numpy
temp
sono uguali a tutti i valori in l'array numpy
c
?
'all_values_are_same = tutti (your_array [0] == your_array):' Ciò che fa è restituire un elenco di booleana se ogni valore è uguale al primo valore, e afferma che tutti sono vere. –