Matriz de Python:transposición, multiplicación, ejemplos de matrices NumPy
¿Qué es Python Matrix?
Una matriz de Python es una matriz rectangular bidimensional especializada de datos almacenados en filas y columnas. Los datos en una matriz pueden ser números, cadenas, expresiones, símbolos, etc. La matriz es una de las estructuras de datos importantes que se pueden usar en cálculos matemáticos y científicos.
En este tutorial de Python, aprenderá:
- ¿Qué es Python Matrix?
- ¿Cómo funcionan las matrices Python?
- Cree Python Matrix utilizando un tipo de datos de lista anidada
- Para leer datos dentro de Python Matrix usando una lista.
- Ejemplo 2:Para leer el último elemento de cada fila.
- Ejemplo 3:Para imprimir las filas en Matrix
- Adición de matrices mediante listas anidadas
- Multiplicación de Matrices usando Lista Anidada
- Cree Python Matrix usando Arrays del paquete Python Numpy
- Operación de matriz usando Numpy.Array()
- Acceso a la matriz NumPy
¿Cómo funcionan las Matrices Python?
Los datos dentro de la matriz bidimensional en formato de matriz tienen el siguiente aspecto:
Paso 1)
Muestra una matriz de 2×2. Tiene dos filas y 2 columnas. Los datos dentro de la matriz son números. La fila1 tiene los valores 2,3 y la fila2 tiene los valores 4,5. Las columnas, es decir, col1, tienen valores 2,4 y col2 tiene valores 3,5.
Paso 2)
Muestra una matriz de 2×3. Tiene dos filas y tres columnas. Los datos dentro de la primera fila, es decir, la fila1, tiene los valores 2,3,4 y la fila2 tiene los valores 5,6,7. Las columnas col1 tienen valores 2,5, col2 tienen valores 3,6 y col3 tienen valores 4,7.
De manera similar, puede tener sus datos almacenados dentro de la matriz nxn en Python. Se pueden realizar muchas operaciones en una suma, resta, multiplicación, etc. similar a una matriz.
Python no tiene una forma sencilla de implementar un tipo de datos de matriz.
La matriz de python hace uso de matrices, y se puede implementar lo mismo.
- Cree una matriz de Python utilizando el tipo de datos de lista anidada
- Cree Python Matrix usando Arrays del paquete Python Numpy
Cree Python Matrix utilizando un tipo de datos de lista anidada
En Python, las matrices se representan utilizando el tipo de datos de lista. Así que ahora usaré la lista para crear una matriz de python.
Crearemos una matriz de 3×3, como se muestra a continuación:
- La matriz tiene 3 filas y 3 columnas.
- La primera fila en un formato de lista será la siguiente:[8,14,-6]
- La segunda fila de una lista será:[12,7,4]
- La tercera fila de una lista será:[-11,3,21]
La matriz dentro de una lista con todas las filas y columnas es como se muestra a continuación:
List = [[Row1], [Row2], [Row3] ... [RowN]]
Entonces, según la matriz mencionada anteriormente, el tipo de lista con datos de matriz es el siguiente:
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]]
Para leer datos dentro de Python Matrix usando una lista.
Haremos uso de la matriz definida anteriormente. El ejemplo leerá los datos, imprimirá la matriz, mostrará el último elemento de cada fila.
Ejemplo:Para imprimir la matriz
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] #To print the matrix print(M1)
Salida:
The Matrix M1 = [[8, 14, -6], [12, 7, 4], [-11, 3, 21]]
Ejemplo 2:Para leer el último elemento de cada fila.
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] matrix_length = len(M1) #To read the last element from each row. for i in range(matrix_length): print(M1[i][-1])
Salida:
-6 4 21
Ejemplo 3:Para imprimir las filas en la Matriz
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] matrix_length = len(M1) #To print the rows in the Matrix for i in range(matrix_length): print(M1[i])
Salida:
[8, 14, -6] [12, 7, 4] [-11, 3, 21]
Adición de matrices usando listas anidadas
Podemos sumar fácilmente dos matrices dadas. Las matrices aquí estarán en forma de lista. Trabajemos en un ejemplo que se encargará de sumar las matrices dadas.
Matriz 1:
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]]
Matriz 2 :
M2 = [[3, 16, -6], [9,7,-4], [-1,3,13]]
Last inicializará una matriz que almacenará el resultado de M1 + M2.
Matriz 3 :
M3 = [[0,0,0], [0,0,0], [0,0,0]]
Ejemplo:Adición de Matrices
Para agregar, las matrices harán uso de un ciclo for que recorrerá las dos matrices dadas.
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] M2 = [[3, 16, -6], [9,7,-4], [-1,3,13]] M3 = [[0,0,0], [0,0,0], [0,0,0]] matrix_length = len(M1) #To Add M1 and M2 matrices for i in range(len(M1)): for k in range(len(M2)): M3[i][k] = M1[i][k] + M2[i][k] #To Print the matrix print("The sum of Matrix M1 and M2 = ", M3)
Salida:
The sum of Matrix M1 and M2 = [[11, 30, -12], [21, 14, 0], [-12, 6, 34]]
Multiplicación de Matrices usando Lista Anidada
Para multiplicar las matrices, podemos usar el ciclo for en ambas matrices, como se muestra en el siguiente código:
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]] M2 = [[3, 16, -6], [9,7,-4], [-1,3,13]] M3 = [[0,0,0], [0,0,0], [0,0,0]] matrix_length = len(M1) #To Multiply M1 and M2 matrices for i in range(len(M1)): for k in range(len(M2)): M3[i][k] = M1[i][k] * M2[i][k] #To Print the matrix print("The multiplication of Matrix M1 and M2 = ", M3)
Salida:
The multiplication of Matrix M1 and M2 = [[24, 224, 36], [108, 49, -16], [11, 9, 273]]
Crear Python Matrix usando Arrays del paquete Python Numpy
La biblioteca de python Numpy ayuda a lidiar con matrices. Numpy procesa una matriz un poco más rápido en comparación con la lista.
Para trabajar con Numpy, primero debe instalarlo. Siga los pasos que se indican a continuación para instalar Numpy.
Paso 1)
El comando para instalar Numpy es:
pip install NumPy
Paso 2)
Para utilizar Numpy en su código, debe importarlo.
import NumPy
Paso 3)
También puede importar Numpy usando un alias, como se muestra a continuación:
import NumPy as np
Vamos a hacer uso del método array() de Numpy para crear una matriz de python.
Ejemplo:Array en Numpy para crear Python Matrix
import numpy as np M1 = np.array([[5, -10, 15], [3, -6, 9], [-4, 8, 12]]) print(M1)
Salida:
[[ 5 -10 15] [ 3 -6 9] [ -4 8 12]]
Operación de matriz usando Numpy.Array()
La operación de matriz que se puede hacer es suma, resta, multiplicación, transposición, lectura de filas, columnas de una matriz, corte de matriz, etc. En todos los ejemplos, vamos a hacer uso de un método array().
Suma de matrices
Para realizar la suma en la matriz, crearemos dos matrices usando numpy.array() y las sumaremos usando el operador (+).
Ejemplo:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [-7, 14, 21]]) M2 = np.array([[9, -18, 27], [11, 22, 33], [13, -26, 39]]) M3 = M1 + M2 print(M3)
Salida:
[[ 12 -12 36] [ 16 12 48] [ 6 -12 60]]
Sustracción de matrices
Para realizar la resta en la matriz, crearemos dos matrices usando numpy.array() y las restaremos usando el operador (-).
Ejemplo:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [-7, 14, 21]]) M2 = np.array([[9, -18, 27], [11, 22, 33], [13, -26, 39]]) M3 = M1 - M2 print(M3)
Salida:
[[ -6 24 -18] [ -6 -32 -18] [-20 40 -18]]
Multiplicación de matrices
Primero creará dos matrices usando numpy.arary(). Para multiplicarlos, puede utilizar el método numpy dot(). Numpy.dot() es el producto escalar de la matriz M1 y M2. Numpy.dot() maneja las matrices 2D y realiza multiplicaciones de matrices.
Ejemplo:
import numpy as np M1 = np.array([[3, 6], [5, -10]]) M2 = np.array([[9, -18], [11, 22]]) M3 = M1.dot(M2) print(M3)
Salida:
[[ 93 78] [ -65 -310]]
Transposición de matriz
La transpuesta de una matriz se calcula cambiando las filas por columnas y las columnas por filas. La función transpose() de Numpy se puede usar para calcular la transposición de una matriz.
Ejemplo:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]]) M2 = M1.transpose() print(M2)
Salida:
[[ 3 5 4] [ 6 -10 8] [ 9 15 12]]
Corte de una matriz
El corte le devolverá los elementos de la matriz en función del índice de inicio/fin dado.
- La sintaxis para dividir es – [inicio:fin]
- Si no se proporciona el índice de inicio, se considera como 0. Por ejemplo [:5], significa como [0:5].
- Si no se pasa el final, se tomará como la longitud de la matriz.
- Si el inicio/final tiene valores negativos, el corte se realizará desde el final de la matriz.
Antes de trabajar en el corte de una matriz, primero comprendamos cómo aplicar el corte en una matriz simple.
import numpy as np arr = np.array([2,4,6,8,10,12,14,16]) print(arr[3:6]) # will print the elements from 3 to 5 print(arr[:5]) # will print the elements from 0 to 4 print(arr[2:]) # will print the elements from 2 to length of the array. print(arr[-5:-1]) # will print from the end i.e. -5 to -2 print(arr[:-1]) # will print from end i.e. 0 to -2
Salida:
[ 8 10 12] [ 2 4 6 8 10] [ 6 8 10 12 14 16] [ 8 10 12 14] [ 2 4 6 8 10 12 14]
Ahora implementemos el corte en matriz. Para realizar cortes en una matriz
la sintaxis será M1[inicio_fila:fin_fila, inicio_col:fin_col]
- El primer inicio/fin será para la fila, es decir, para seleccionar las filas de la matriz.
- El segundo inicio/final será para la columna, es decir, para seleccionar las columnas de la matriz.
La matriz M1 que vamos a utilizar es la siguiente:
M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]])
Hay un total de 4 filas. El índice comienza de 0 a 3. El 0 th la fila es [2,4,6,8,10], 1 st la fila es [3,6,9,-12,-15] seguida de la 2 nd y 3 rd .
La matriz M1 tiene 5 columnas. El índice comienza de 0 a 4. El 0 th la columna tiene valores [2,3,4,5], 1 st las columnas tienen valores [4,6,8,-10] seguidos de 2 nd , 3 rd , 4 th , y 5 th .
Aquí hay un ejemplo que muestra cómo obtener los datos de las filas y columnas de la matriz mediante el corte. En el ejemplo, estamos imprimiendo el 1 st y 2 nd fila, y para columnas, queremos la primera, segunda y tercera columna. Para obtener esa salida hemos usado:M1[1:3, 1:4]
Ejemplo:
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[1:3, 1:4]) # For 1:3, it will give first and second row. #The columns will be taken from first to third.
Salida:
[[ 6 9 -12] [ 8 12 16]]
Ejemplo:para imprimir todas las filas y la tercera columna
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:,3]) # This will print all rows and the third column data.
Salida:
[ 8 -12 16 -20]
Ejemplo:Para imprimir la primera fila y todas las columnas
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:1,]) # This will print first row and all columns
Salida:
[[ 2 4 6 8 10]]
Ejemplo:Para imprimir las primeras tres filas y las primeras 2 columnas
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:3,:2])
Salida:
[[2 4] [3 6] [4 8]]
Acceso a la matriz NumPy
Hemos visto cómo funciona el corte. Teniendo eso en cuenta, veremos cómo obtener las filas y columnas de la matriz.
Para imprimir las filas de la matriz
En el ejemplo imprimirá las filas de la matriz.
Ejemplo:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]]) print(M1[0]) #first row print(M1[1]) # the second row print(M1[-1]) # -1 will print the last row
Salida:
[3 6 9] [ 5 -10 15] [ 4 8 12]
Para obtener la última fila, puede utilizar el índice o -1. Por ejemplo, la matriz tiene 3 filas,
entonces M1[0] te dará la primera fila,
M1[1] te dará la segunda fila
M1[2] o M1[-1] le dará la tercera fila o la última fila.
Para imprimir las columnas de la matriz
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:,0]) # Will print the first Column print(M1[:,3]) # Will print the third Column print(M1[:,-1]) # -1 will give you the last column
Salida:
[2 3 4 5] [ 8 -12 16 -20] [ 10 -15 -20 25]
Resumen:
- Una matriz de Python es una matriz rectangular bidimensional especializada de datos almacenados en filas y columnas. Los datos en una matriz pueden ser números, cadenas, expresiones, símbolos, etc. La matriz es una de las estructuras de datos importantes que se pueden usar en cálculos matemáticos y científicos.
- Python no tiene una forma sencilla de implementar un tipo de datos de matriz. La matriz de Python se puede crear usando un tipo de datos de lista anidada y usando la biblioteca numpy.
- La biblioteca de python Numpy ayuda a manejar matrices. Numpy procesa una matriz un poco más rápido en comparación con la lista.
- La operación de matriz que se puede realizar es suma, resta, multiplicación, transposición, lectura de filas, columnas de una matriz, división de la matriz, etc.
- Para agregar dos matrices, puede usar numpy.array() y agregarlas usando el operador (+).
- Para multiplicarlos, puedes usar el método numpy dot(). Numpy.dot() es el producto escalar de la matriz M1 y M2. Numpy.dot() maneja las matrices 2D y realiza multiplicaciones de matrices.
- La transpuesta de una matriz se calcula cambiando las filas por columnas y las columnas por filas. La función transpose() de Numpy se puede usar para calcular la transposición de una matriz.
- La división de una matriz le devolverá los elementos según el índice de inicio/fin proporcionado.
python
- Diccionario de Python
- Matrices en C++ | Declarar | Inicializar | Ejemplos de puntero a matriz
- Declaración Python Print():cómo imprimir con ejemplos
- Python String count () con EJEMPLOS
- Python String format() Explicar con EJEMPLOS
- Método Python String find() con ejemplos
- Funciones Python Lambda con EJEMPLOS
- Función Python abs():Ejemplos de valores absolutos
- Función Python round() con EJEMPLOS
- Python range() Función:Flotante, Lista, Para ejemplos de bucle
- Función Python map() con EJEMPLOS