Red de conocimiento informático - Conocimiento sistemático - Una breve discusión sobre varios métodos de clasificación de numpy array_python

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:

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

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