Calcular el producto punto en Python

Vaibhhav Khetarpal 10 octubre 2023
  1. Utilice el signo * para calcular el producto escalar de dos escalares en Python
  2. Utilice la función numpy.dot() para calcular el producto escalar de dos matrices o vectores en Python
  3. Utilice la función sum() para calcular el producto escalar de dos matrices o vectores en Python
  4. Utilice la función map() junto con la función mul() para calcular el producto escalar de dos matrices o vectores en Python
  5. Utilice la biblioteca more_itertools para calcular el producto escalar de dos matrices o vectores en Python
Calcular el producto punto en Python

Este tutorial presenta las diferentes formas de calcular el producto escalar de dos matrices o vectores en Python.

Antes de pasar a los diferentes métodos para implementar esto, primero aprenderemos sobre el producto punto en Python.

Como sabrá, un producto escalar, a veces incluso denominado producto escalar, es una operación algebraica que se lleva a cabo entre dos matrices específicas; pueden ser escalares o vectoriales. La salida es siempre un solo número.

Python permite el cálculo del producto escalar de dos matrices, siempre que las secuencias de longitud de ambas matrices sean similares.

Utilice el signo * para calcular el producto escalar de dos escalares en Python

Los escalares también se conocen como matrices de dimensión 0 y simplemente se tratan como valores numéricos estándar. El producto escalar entre ellos sería el mismo que el producto de ambos escalares.

Aunque los métodos mencionados a continuación también funcionarían para escalares, esta es una forma relativamente más sencilla de realizar el proceso sin tener que hacer ningún trabajo adicional.

El siguiente código usa el signo * para calcular el producto escalar de dos escalares en Python.

dotp = 2 * 5
print(dotp)

El código anterior proporciona el siguiente resultado:

10

Utilice la función numpy.dot() para calcular el producto escalar de dos matrices o vectores en Python

El término NumPy es un acrónimo de Numerical Python. Esta biblioteca hace posible el uso de matrices en Python. También proporciona funciones que ayudan a manipular estas matrices.

La función numpy.dot() es una función que está especialmente diseñada para llevar a cabo el propósito de encontrar el producto escalar entre dos matrices. El módulo NumPy debe importarse al código Python para que se ejecute sin problemas y sin errores.

Para explicar esta implementación en el código Python, tomaremos dos listas y devolveremos el producto punto.

El siguiente código usa la función numpy.dot() para calcular el producto escalar de dos matrices o vectores en Python.

import numpy as np

x = [5, 10]
y = [4, -7]
dotp = np.dot(x, y)
print(dotp)

El código anterior proporciona el siguiente resultado:

-50

El código anterior también funciona para matrices bidimensionales. Puede confirmar fácilmente las respuestas encontrando rápidamente el producto escalar por su cuenta en la vida real. Esta función proporciona resultados precisos si se utiliza correctamente.

La misma función se puede utilizar para escalares de la siguiente manera:

import numpy as np

dotp = np.dot(2, 5)
print(dotp)

El código anterior proporciona el siguiente resultado:

10

Python 3.5 introdujo el operador @ para calcular el producto escalar de matrices n-dimensionales creadas usando NumPy. Este método se utiliza ampliamente en la versión más reciente de Python. Debemos tener en cuenta que no funciona en listas generales.

Utilice la función sum() para calcular el producto escalar de dos matrices o vectores en Python

Una forma pythonic más antigua sería utilizar la función sum() y hacer algunos ajustes generales para calcular el producto escalar entre dos matrices en Python.

La función zip() es una función incorporada que se ofrece en Python y se utiliza aquí junto con la función sum() para combinar las matrices dadas.

Aquí, también usaremos la comprensión de listas para hacer el código más compacto.

El siguiente código utiliza la función sum() para calcular el producto escalar de dos matrices o vectores en Python.

x = [5, 10]
y = [4, -7]
print(sum([i * j for (i, j) in zip(x, y)]))

El código anterior proporciona el siguiente Resultado:

-50

Utilice la función map() junto con la función mul() para calcular el producto escalar de dos matrices o vectores en Python

La función map() se utiliza para devolver un objeto de mapa después de aplicar cualquier función dada a todos los elementos del iterable seleccionado.

La función mul(), como su nombre indica, es una función incorporada para realizar la tarea de multiplicar dos números cualesquiera. La función mul() se puede encontrar y utilizar importándola desde la biblioteca de operator.

El siguiente código usa la función map() junto con la función mul() para calcular el producto escalar de dos matrices o vectores en Python.

from operator import mul

x = [5, 10]
y = [4, -7]
print(sum(map(mul, x, y)))

El código anterior proporciona el siguiente resultado:

-50

Utilice la biblioteca more_itertools para calcular el producto escalar de dos matrices o vectores en Python

more_iteratertools es una biblioteca de terceros con una gran presencia en la plataforma Github. Simplemente implementa la receta general de dotproduct itertools que ya existe.

El siguiente código usa la biblioteca more_itertools para calcular el producto escalar de dos matrices o vectores en Python.

import more_itertools as mit

a = [5, 10]
b = [4, -7]
print(mit.dotproduct(a, b))

El código anterior proporciona el siguiente resultado:

-50
Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

Artículo relacionado - Python Array

Artículo relacionado - Python Math