Una breve discusión sobre varios métodos de clasificación de numpy array_python
Este artículo presenta principalmente varios métodos de clasificación de matrices numpy, incluida una breve introducción a numpy y cómo crear matrices. Los amigos que estén interesados en numpy pueden consultarlo.
Una breve introducción
El sistema NumPy es una extensión informática de matrices de código abierto para Python. Esta herramienta se puede utilizar para almacenar y procesar matrices grandes de manera mucho más eficiente que la propia estructura de listas anidadas de Python (que también se puede utilizar para representar matrices).
Crear una matriz
Crear una matriz unidimensional:
data = np.array()
Ver las dimensiones de la matriz
data.shape
Ver tipo de matriz
data.dtype
Obtener o modificar elementos de matriz por índice
data,]) Ambos elementos son listaslt;brgt;2.data = np.arange(10) Al igual que el rango de Python, range devuelve una lista y arange devuelve una matriz de tipos de matrizlt;brgt;3.data2 = data.reshape(2 , 5) Devuelve una matriz de 2*5. No copia la matriz sino una referencia. Simplemente devuelve una vista diferente de la matriz. Si los datos cambian, los datos2 también cambiarán.
Cree una matriz especial.
data = np.zeros((2,2)) crea una matriz 2D de 2*2 con todos ceros
data = np.ones((2,3,3,) ) crea una matriz 3D con todos los 1
data = np.eye(4) crea una matriz diagonal de 4*4, con el elemento diagonal siendo 1 y los demás 0
Matriz conversion
data = np.arange(16).reshape(4, 4) Convierte la matriz de desplazamiento 0-16 en una matriz de 4*4
Método de clasificación
Nota: a menudo es necesario para ordenar matrices o listas, Python proporciona varias funciones de clasificación. Las características se describen a continuación:
Matriz bidimensional a:
1 4
.3 11. ndarray.sort(axis=-1, kind='quicksort', order=None)
Método de uso: a.sort
Descripción del parámetro: p>
eje: ordenar a lo largo de la dirección de la matriz, 0 significa por fila, 1 significa por columna
tipo: algoritmo de clasificación, que proporciona clasificación rápida, clasificación mixta y clasificación en montón
orden: no se refiere al orden. Analizaremos esto cuando lo usemos en el futuro
Efecto: ordena la matriz a y cambia directamente a después de ordenar
Para. ejemplo:
gt;gt;a.sort(axis=1)
gt;gt;imprimir a
1 4
1 32. numpy.sort( a, axis=-1, kind='quicksort', order=None)
Método de uso: numpy.sort(a)
Descripción del parámetro:
a: matriz a ordenar, otros efectos son los mismos que 1
Efecto: ordena la matriz a y devuelve una matriz ordenada (misma dimensión que a), sin cambios
Por ejemplo:
gt;gt;print numpy.sort(a, eje=1)
1 4
1 3
gt;gt ;imprimir a
1 4
3 13. numpy.argsort(a, eje=-1, kind='quicksort', orden=Ninguno)
Uso: numpy.argsort(a)
Descripción del parámetro: Igual que 2
Efecto: Ordena la matriz a y devuelve un índice ordenado, sin cambios p>
Por ejemplo:
gt; gt; print numpy.argsort(a, eje=1)
0 1
1 04. ordenado (iterable, cmp = Ninguno, clave = No
e, reverso=False)
Nota: La función de clasificación incorporada se puede utilizar para listas, diccionarios, etc.
iterable: es un tipo iterable;
cmp: Función utilizada para comparación, lo que se compara está determinado por clave, tiene un valor predeterminado y es un elemento en la colección iterativa;
clave: usa un determinado atributo y función del elemento de la lista como palabra clave, tiene un valor predeterminado, un elemento en la colección iterativa
reverso: regla de clasificación.reverse=True o reverso=False, el valor predeterminado es False (de pequeño a grande).
Valor de retorno: Es un tipo iterable ordenado, igual que iterable
Por ejemplo: b es un diccionario
b:
{'a': 2, 'c': 1, 'b': 3}
Ordenar b:
gt; c=sorted(b. iteritems( ), key=operator.itemgetter(1), reverse=False)
gt;gt;print c[('c', 1), ('a', 2), ('b ', 3)] Visible: Lo que se devuelve es una lista
Resumen