Python comprueba si todos los elementos de la matriz son iguales

No sé si alguna vez ha tenido esta experiencia, solo quiero juzgar si los valores de cada elemento en la nueva matriz obtenida después de dos operaciones de matriz son los mismos. Aquí hay un np.unique()método para usar , el código es el siguiente:

import numpy as np


class Debug:
    @staticmethod
    def isAllElementSame():
        x1 = np.array([[1, 2, 3], [3, 4, 5], [6, 7, 8]])
        x2 = np.array([[81., 162., 243., ], [243., 324., 405.], [486., 567., 648.]])
        print('The result if x2/x1 is:')
        print(x2 / x1)
        print('Judge whether all elements in array are same or not')
        print(len(np.unique(x2 / x1)) == 1)


if __name__ == '__main__':
    debug = Debug()
    debug.isAllElementSame()
"""
The result if x2/x1 is:
[[81. 81. 81.]
 [81. 81. 81.]
 [81. 81. 81.]]
Judge whether all elements in array are same or not
True
"""

Se puede observar que cuando la salida es True, indica que los valores de todos los elementos del arreglo son iguales, por el contrario, cuando Falselo es, hay diferentes valores de elementos en el arreglo.

¿Qué pasa si los elementos de la matriz son complejos?

import numpy as np


class Debug:
    @staticmethod
    def isAllElementSame():
        x1 = np.array([complex(1, 2), complex(2, 4)])
        x2 = np.array([complex(2, 4), complex(4, 8)])
        print('The result if x2/x1 is:')
        print(x2 / x1)
        print('Judge whether all elements in array are same or not')
        print(len(np.unique(x2 / x1)) == 1)


if __name__ == '__main__':
    debug = Debug()
    debug.isAllElementSame()
"""
The result if x2/x1 is:
[2.+0.j 2.+0.j]
Judge whether all elements in array are same or not
True
"""

Como puede ver, este método sigue siendo aplicable cuando los elementos de la matriz son complejos. Sin embargo, cuando el elemento de la matriz como un decimal puede fallar, si el fallo plus np.round()función y conjunto a un decimal válido obligados a retener, por ejemplo: print(len(np.unique(np.round(x2 / x1))) == 1).

La palabra clave no es fácil, si la encuentra útil, levante la mano para dar un me gusta y déjeme recomendarla para que la vea más gente ~

Supongo que te gusta

Origin blog.csdn.net/u011699626/article/details/112256541
Recomendado
Clasificación