logo

numpy.dot() em Python

O módulo numpy do Python fornece uma função para realizar o produto escalar de duas matrizes.

  • Se ambas as matrizes 'a' e 'b' forem matrizes unidimensionais, a função dot() executa o produto interno dos vetores (sem conjugação complexa).
  • Se ambas as matrizes 'a' e 'b' forem matrizes bidimensionais, a função dot() executa a multiplicação da matriz. Mas para multiplicação de matrizes, use o tapete ou 'a' @ 'b' é preferível.
  • Se 'a' ou 'b' for 0-dimensional (escalar), a função dot() executa a multiplicação. Além disso, o uso de numpy.multiplicar (a, b) ou uma *b método é o preferido.
  • Se 'a' for um array N-dimensional e 'b' for um array unidimensional, então a função dot() executa o produto da soma no último eixo de a e b.
  • Se 'a' for um array M-dimensional e 'b' for um array N-dimensional (onde N>=2), então a função dot() executa o produto da soma sobre o último eixo de 'a' e o segundo -até o último eixo de 'b':
 dot(a, b)[i,j,k,n] = sum(a[i,j,:] * b[k,:,n]) 

Sintaxe

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

Parâmetros

a: array_like

Este parâmetro define a primeira matriz.

b: array_like

diferença entre árvore binária e árvore de pesquisa binária

Este parâmetro define a segunda matriz.

fora: ndarray (opcional)

É um argumento de saída. Deve ser do tipo exato que seria devolvido caso não fosse utilizado. Particularmente, deve atender ao recurso de desempenho, ou seja, deve conter o tipo correto, ou seja, deve ser C-contíguo, e seu dtype deve ser o dtype que seria retornado para ponto(a,b). Assim, se não atender a essas condições especificadas, gera uma exceção.

10 de 1 milhão

Devoluções

Esta função retorna o produto escalar de 'a' e 'b'. Esta função retorna um escalar se 'a' e 'b' forem ambos escalares ou unidimensionais; caso contrário, ele retornará um array. Se 'out' for fornecido, ele será retornado.

Levanta

O Erro de valor ocorre quando a última dimensão de 'a' não tem o mesmo tamanho que a penúltima dimensão de 'b'.

Exemplo 1:

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

Saída:

 72 

Exemplo 2:

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

Saída:

 (-34+0j) 

Exemplo 3:

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

Saída:

converter int em string java
 array([[ 8, 17], [18, 47]]) 

No código acima

  • Importamos numpy com o nome alternativo np.
  • Criamos duas matrizes bidimensionais ' a ' e ' b '.
  • Declaramos a variável ' c ' e atribuiu o valor retornado de np.ponto() função.
  • Por último, tentamos imprimir o valor de ' c '.

Na saída, mostra o produto da matriz como uma matriz.

Exemplo 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 

Saída:

 499128 499128 

No código acima

java x c++
  • Importamos numpy com o nome alternativo np.
  • Criamos dois arrays ' a ' e ' b ' usando np.arange() função e altere a forma de ambos os arrays usando a função reshape().
  • Declaramos a variável ' c ' e atribuiu o valor retornado de np.ponto() função
  • Por último, tentamos imprimir o ' c ' valor.

Na saída, mostra o produto da matriz como uma matriz.