Menu
Coddy logo textTech

Multiplicaciones de matrices

Lección 18 de 18 del curso Fundamentos de Numpy de Coddy.

La multiplicación de matrices es una serie de productos escalares que producen una nueva matriz.

¿Cómo funciona?

Supongamos que tenemos dos matrices A con la forma de (3, 2) y B con la forma (2, 4). 

La multiplicación de A y B dará una nueva matriz con la forma (3, 4).

Las dimensiones internas de las matrices deben coincidir (en este caso, tanto A como B tienen 2 -> (3,2)(2,4)=(3,4))

La multiplicación de A*b es el 

  • producto escalar de la Fila 1 de A con la Columna 1 de B es el resultado del elemento en [1, 1]
  • producto escalar de la Fila 1 de A con la Columna 2 de B es el resultado del elemento en [1, 2]
  • ...
  • ...
  • producto escalar de la Fila 2 de A con la Columna 1 de B es el resultado del elemento en [2, 1]
  • producto escalar de la Fila 2 de A con la Columna 2 de B es el resultado del elemento en [2, 2]
  • ...
  • ...
  • etc.

Ejemplo:

Matriz A:

12
34
56

Matriz B:

78910
11121314

Resultado:

1*7 + 2*111*8 + 2*121*9 + 2*131*10 + 2*14
3*7 + 4*113*8 + 4*123*9 + 4*133*10 + 4*14
5*7 + 6*115*8 + 6*125*9 + 6*135*10 + 6*14

Y después de calcular:

29323538
65727986
101112123134

¿Cómo hacerlo en numpy?

Hay 3 formas de multiplicar matrices:

  • np.matmul(matrix1, matrix2)
  • matrix1.dot(matrix2)
  • A @ B
import numpy as np
A = np.array([[1, 2], [3, 4], [5, 6]])
B = np.array([[7, 8, 9, 10], [11, 12, 13, 14]])
np.matmul(A,B)

Salida:

array([[ 29,  32,  35,  38],
       [ 65,  72,  79,  86],
       [101, 112, 123, 134]])
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

challenge icon

Desafío

Crea una función llamada matrix_master que reciba tres listas de Python y devuelva la multiplicación de matrices de las dos primeras listas y realice un producto punto del resultado con la última lista

Pruébalo tú mismo

import numpy as np
def matrix_master(lst1, lst2, lst3):
    # complete

Todas las lecciones de Fundamentos de Numpy