Es kann für einen professionellen Pythonisten normal sein, Ich brauche Zeit, um zu verstehen Wenn ich es verstehen konnte, war ich beeindruckt von seiner Stärke. .. .. Weil. .. ..
Bestimmen Sie, ob jedes Element die Bedingung als Matrix erfüllt oder nicht. Das resultierende Richtig / Falsch wird als Matrix mit derselben Form ausgegeben.
arr = np.array([[0,1,2,3],[0,2,4,6]])
print(arr<3)
# [[ True True True False]
# [ True True False False]]
numpy.nonzero Es ruft den Index des Nicht-Null-Elements der Matrix ab und gibt ihn als x, y-separates ndarray-Array aus.
#Beispieldefinition
arr_int = np.array([[3,5,0],[0,4,0]])
arr_bool = np.array([[True,True,False],[False,True, False]])
# np.Verwendung ungleich Null
nonzero_int_row, nonzero_int_column = np.nonzero(arr_int)
nonzero_bool_row, nonzero_bool_column = np.nonzero(arr_bool)
#Wert jeder Variablen
# row: array([0, 0, 1])
# column: array([0, 1, 1]))
In diesem Beispiel sind arr [0,0], arr [0,1], arr [1,1] nicht 0, daher ist dies das Ergebnis.
arr = np.array([[0,1,2,3],[0,2,4,6]])
arr_bool = arr<3
nonzero_row, nonzero_column = np.nonzero(arr_bool)
# row: [0 0 0 1 1]
# column: [0 1 2 0 1]
Ich habe einen Kommentar bekommen! Dies bedeutet, dass np.where die gleiche Funktion hat und praktisch ist! Warum hat die Website, die ich mir angesehen habe, diese nicht verwendet ...