NumPy es el paquete básico de computación científica en Python. Es una biblioteca de Python que proporciona objetos de matriz multidimensionales, varios objetos derivados (como matrices y matrices enmascaradas) y varias API para operaciones de matriz rápidas, incluidas matemáticas, lógica, operaciones de forma, clasificación, selección, entrada y salida. , Transformada discreta de Fourier, álgebra lineal básica, operaciones estadísticas básicas y simulación aleatoria, etc.
Para un estudio detallado, visite el sitio web chino de numpy : https://www.numpy.org.cn/
Crea una matriz:
Puede utilizar la función de matriz para crear una matriz a partir de una lista o tupla de Python normal. El tipo de la matriz resultante se deduce del tipo de elementos en la lista de Python. Es decir, el tipo de elemento de la matriz es el mismo que el tipo de elemento en la lista o tupla de Python .
(Los resultados del código se escribirán en los comentarios)
import numpy as np
#将列表转换为数组
array = np.array([[1,2,3],
[4,5,6]])
print(array)
#[[1 2 3]
# [4 5 6]]
array = np.array(((1,2,3),
(4,5,6)))
print(array)
#[[1 2 3]
# [4 5 6]]
Si se desconoce el elemento de la matriz, pero se conoce el tamaño de la matriz, NumPy proporciona varias funciones para crear una matriz con contenido de marcador de posición inicial.
- ceros (): puede crear una matriz de todos los ceros con una longitud o forma especificada
- ones (): puede crear una matriz de todos los 1 con una longitud o forma especificada
- vacío (): crea una matriz cuyo contenido inicial es aleatorio , dependiendo del estado de la memoria
import numpy as np
zeroarray = np.zeros((2,3))
print(zeroarray)
#[[0. 0. 0.]
# [0. 0. 0.]]
onearray = np.ones((3,4))
print(onearray)
#[[1. 1. 1. 1.]
# [1. 1. 1. 1.]
# [1. 1. 1. 1.]]
emptyarray = np.empty((3,4))
print(emptyarray)
# [[1. 1. 1. 1.]
# [1. 1. 1. 1.]
# [1. 1. 1. 1.]]
Para crear una matriz de números, NumPy proporciona una función similar a rango, que es similar a la función de rango.
import numpy as np
array = np.arange( 10, 31,5 )
print(array)
#[10 15 20 25 30]
Información de matriz de salida:
import numpy as np
array = np.array([[1,2,3],[4,5,6],[7,8,9],[10,11,12]])
print(array)
# [[ 1 2 3]
# [ 4 5 6]
# [ 7 8 9]
# [10 11 12]]
#数组维度
print(array.ndim)
#2
#数组形状
print(array.shape)
#(4, 3)
#数组元素个数
print(array.size)
#12
#数组元素类型
print(array.dtype)
#int32
Cálculo de matriz:
Operaciones básicas:
import numpy as np
arr1 = np.array([[1,2,3],[4,5,6]])
arr2 = np.ones([2,3])
print(arr1 + arr2)
# [[2. 3. 4.]
# [5. 6. 7.]]
print(arr1 - arr2)
# [[0. 1. 2.]
# [3. 4. 5.]]
print(arr1 * arr2)
# [[1. 2. 3.]
# [4. 5. 6.]]
print(arr2 / arr1)
# [[1. 0.5 0.33333333]
# [0.25 0.2 0.16666667]]
print(arr1 ** 2)
# [[ 1 4 9]
# [16 25 36]]
Vale la pena señalar que la operación aquí es la operación de los elementos correspondientes de la matriz, incluidas las operaciones de multiplicación y potencia. Por lo tanto, si las dos matrices son de diferentes tamaños, se producirá un error.
Multiplicación de matrices
import numpy as np
arr3 = np.array([[1,2,3],[4,5,6]])
arr4 = np.ones([3,2],dtype=np.int64)
print(np.dot(arr3,arr4))
# [[ 6 6]
# [15 15]]
Transposición y aplanamiento de matrices (este chino no es fácil de describir ... ¿aplanamiento?)
import numpy as np
arr3 = np.array([[1,2,3],[4,5,6]])
arr3_tran = arr3.transpose()
print(arr3)
# [[1 2 3]
# [4 5 6]]
print(arr3_tran)
# [[1 4]
# [2 5]
# [3 6]]
print(arr3.flatten())
# [1 2 3 4 5 6]
Indexación, división e iteración de matrices
Igual que otros tipos de secuencia en Python
import numpy as np
arr5 = np.arange(0,6).reshape([2,3])
print(arr5)
# [[0 1 2]
# [3 4 5]]
print(arr5[1])
#[3 4 5]
print(arr5[1][2])
#5
print(arr5[1,2])
#5
print(arr5[1,:])
#[3 4 5]
print(arr5[:,1])
#[1 4]
print(arr5[1,0:2])
# [3 4]
for i in arr5:
print(i**2)
#[0 1 4]
#[ 9 16 25]
Las operaciones básicas se tratan de estos, aún queda más contenido por ir al sitio web de Numpy Chinese : https://www.numpy.org.cn/
Si hay errores en este artículo o hay problemas con el contenido, no dude en comunicarse en el área de comentarios ~