11 votos

Multiplicación de vectores insectos y JAGS

En R, c(3,1,0) * c(2,0,1) == c(6,0,0). Esto no es producto de punto y no es producto de la Cruz. En primer lugar, ¿cuál es el nombre de este producto, y en segundo lugar, funciona en WinBUGS, OpenBUGS o JAGS?

5voto

Cory Puntos 4442

Martyn Plummer, señala que esta se implementa en ENTRECORTADO, lo que me perdí cuando de la lectura del manual. Desde Ch 5:

Las funciones escalares de tomar argumentos escalares son automáticamente vectorizados. También pueden ser llamados cuando los argumentos son matrices conforme con dimensiones, o escalares. Así, por ejemplo, los escalares $c$ puede ser añadido a la matriz $A$ usando

B <- A + c

en lugar de la forma más detallada

D <- dim(A)
for (i in 1:D[1])
  for (j in 1:D[2]) {
    B[i,j] <- A[i,j] + c
  }
}

4voto

guest Puntos 1851

A diferencia de los JAGS, WinBUGS y OpenBUGS no esta forma de vectorización; usted tiene para escribir un bucle y calcular cada elemento de 'a mano', como se describe anteriormente.

2voto

Flint Puntos 257

Incidentalmente, la multiplicación de dos vectores de igual longitud se llama producto Hadamard (también conocido como el producto Schur).

2voto

Iwasakabukiman Puntos 518

Para hacer la multiplicación de los elementos, puede hacer un bucle for en esos idiomas ¡y eso es todo! He usado bucles en WinBUGS sin problemas.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X