logo

numpy.dot() en Python

El módulo numpy de Python proporciona una función para realizar el producto escalar de dos matrices.

  • Si tanto las matrices 'a' como 'b' son matrices unidimensionales, la función dot() realiza el producto interno de los vectores (sin conjugación compleja).
  • Si ambas matrices 'a' y 'b' son matrices bidimensionales, la función dot() realiza la multiplicación de matrices. Pero para la multiplicación de matrices se utiliza la estera o 'a' @ 'b' se prefiere.
  • Si 'a' o 'b' son de dimensión 0 (escalar), la función dot() realiza la multiplicación. Asimismo, el uso de numpy.multiplicar (a, b) o *b Se prefiere el método
  • Si 'a' es una matriz N-dimensional y 'b' es una matriz unidimensional, entonces la función dot() realiza la suma-producto sobre el último eje de a y b.
  • Si 'a' es una matriz de M dimensiones y 'b' es una matriz de N dimensiones (donde N>=2), entonces la función dot() realiza la suma del producto sobre el último eje de 'a' y el segundo -al último eje de 'b':
 dot(a, b)[i,j,k,n] = sum(a[i,j,:] * b[k,:,n]) 

Sintaxis

 numpy.dot(a, b, out=None) 

Parámetros

a: tipo matriz

Este parámetro define la primera matriz.

b: tipo matriz

cómo desactivar el modo desarrollador en android

Este parámetro define la segunda matriz.

CSS centrando una imagen

salida: ndarray (opcional)

Es un argumento de salida. Debe ser del tipo exacto que se devolverá en caso de que no se utilice. En particular, debe cumplir con la característica de rendimiento, es decir, debe contener el tipo correcto, es decir, debe ser contiguo a C, y su tipo d debe ser el tipo d que se devolvería para el punto (a, b). Por lo tanto, si no cumple con estas condiciones especificadas, plantea una excepción.

Devoluciones

Esta función devuelve el producto escalar de 'a' y 'b'. Esta función devuelve un escalar si 'a' y 'b' son ambos escalares o unidimensionales; de lo contrario, devuelve una matriz. Si se da 'out', se devuelve.

aumentos

El Error de valor ocurre cuando la última dimensión de 'a' no tiene el mismo tamaño que la penúltima dimensión de 'b'.

Ejemplo 1:

 import numpy as np a=np.dot(6,12) a 

Producción:

 72 

Ejemplo 2:

 import numpy as np a=np.dot([2j, 3j], [5j, 8j]) a 

Producción:

 (-34+0j) 

Ejemplo 3:

 import numpy as np a = [[1, 2], [4, 1]] b = [[4, 11], [2, 3]] c=np.dot(a, b) c 

Producción:

convertir int a cadena java
 array([[ 8, 17], [18, 47]]) 

En el código anterior

  • Hemos importado numpy con nombre de alias np.
  • Hemos creado dos matrices bidimensionales. a ' y ' b '.
  • Hemos declarado la variable ' C ' y se le asignó el valor devuelto de np.dot() función.
  • Por último, intentamos imprimir el valor de ' C '.

En el resultado, muestra el producto matricial como una matriz.

Ejemplo 4:

 import numpy as np x = np.arange(3*4*5*6).reshape((3,4,5,6)) y = np.arange(3*4*5*6)[::-1].reshape((5,4,6,3)) p=np.dot(a, b)[2,3,2,1,2,2] q=sum(a[2,3,2,:] * b[1,2,:,2]) p q 

Producción:

 499128 499128 

En el código anterior

java frente a c++
  • Hemos importado numpy con nombre de alias np.
  • Hemos creado dos matrices ' a ' y ' b ' usando np.arange() funcione y cambie la forma de ambas matrices usando la función reshape().
  • Hemos declarado la variable ' C ' y se le asignó el valor devuelto de np.dot() función
  • Por último, intentamos imprimir el ' C ' valor.

En el resultado, muestra el producto matricial como una matriz.