NOTA: NumPy es el sucesor de Numarray y se usa para reemplazar a NumArray. SAGE es un paquete de software matemático basado en NumPy y integrado con otras herramientas, con el objetivo de reemplazar a herramientas como Magma, Maple, Mathematica y Matlab. Hoy quise buscar información sobre NumPy en la red y probar con NumPy para la búsqueda de la matriz inversa, pero no encontré ninguna información en chino, un internauta en el foro me preguntó cómo hacer la búsqueda de la matriz inversa con Python, y nadie me respondió. Así que encontré el documento oficial de NumPy, en el que hay un pequeño apartado que presenta los objetos de la matriz, así que traduje este apartado al chino y hice una pequeña contribución, el tiempo es más corto, no hay manera de comprobar los errores de ortografía, hay problemas.
El tipo de matriz es heredado del tipo de ndarray, por lo que contiene todas las propiedades y métodos de datos de ndarray. Hay seis diferencias importantes entre el tipo de matriz y el tipo de ndarray, que pueden causar resultados no deseados cuando se opera con matrices como objetos de matriz.
(a) .T – vuelve a su propia translación
(b) .H – vuelve a su propio desplazamiento de resonancia
© .I – regresa su propia matriz inversa
(d) .A – una vista de un array bidimensional que devuelve sus propios datos (sin hacer ninguna copia)
La clase Matrix es una subclase de Python de ndarray, y también se puede aprender esta implementación para construir su propia subclase de ndarray. Los objetos de Matrix también se pueden construir con otros objetos de Matrix, cadenas de caracteres, u otros que se pueden convertir en los parámetros de una ndarray. Además, en NumPy, el parámetro de matriz es otro nombre para el parámetro de matriz.
Ejemplo 1: Construir una matriz con una cadena
import numpy as np
a=np.mat('1 2 3; 4 5 3')
print (a*a.T).I
[[ 0.29239766 -0.13450292]
[-0.13450292 0.08187135]]
np.matrix([[ 1.+0.j, 5.+0.j, 10.+0.j],
[ 1.+0.j, 3.+0.j, 0.+4.j]])
np.mat( np.random.rand(3,3) ).T
np.matrix([[ 0.81541602, 0.73987459, 0.03509142],
[ 0.14767449, 0.60539483, 0.05641679],
[ 0.43257759, 0.628695 , 0.47413553]])
Matrix( data, dtype=None, copy=True ) Se convertirá en una matriz el dato introducido con datos de parámetros. Si dtype es None, el tipo de dato será determinado por el contenido del dato. Si copy es True, se copiará el dato en el data, de lo contrario se utilizará el buffer de datos original. Si no se encuentra el buffer de datos, también se realizará una copia de los datos. Mat Es un nombre para la matriz. Asmatrix(data, dtype=None) Devuelve datos que no han sido copiados. Es el equivalente a matrix ((data, dtype, copy=False) Bmat(obj, ldict=None, gdict=None) Construir una matriz usando una cadena, una secuencia encapsulada o un array. Esta instrucción permite construir una matriz a partir de otros objetos. Se usan los parámetros ldict y gdict, que son los diccionarios de locales y módulos, solo cuando obj es una cadena. Si no los proporciona, los proporcionará el sistema.
A=np.mat('2 2; 2 2'); B=np.mat('1 1; 1 1');
print(np.bmat('A B; B A'))
[[2 2 1 1]
[2 2 1 1]
[1 1 2 2]
[1 1 2 2]]
Traducido de su frank