jeudi 23 juin 2016

randomized element-wise multiplication in R

I've been digging around the site for an answer to my question, and I'm new with R so I'm hoping this is even possible. I have two large matrices of simulations (A = 100,000 x 50 and B = 10,000 x 50) that I would like to randomly multiply element-wise by row.

Essentially I would like each row in A to randomly select a row from B for element-wise multiplication.

A:

      [,1] [,2] [,3] [,4] [,5]
[1,]    1    1    1    1    1
[2,]    1    1    1    1    1
[3,]    1    1    1    1    1
[4,]    1    1    1    1    1
[5,]    1    1    1    1    1
[6,]    1    1    1    1    1
[7,]    1    1    1    1    1
[8,]    1    1    1    1    1
[9,]    1    1    1    1    1
[10,]   1    1    1    1    1

And B:

      [,1] [,2] [,3] [,4] [,5]
[1,]    1    1    1    1    1
[2,]    2    2    2    2    2
[3,]    3    3    3    3    3
[4,]    4    4    4    4    4
[5,]    5    5    5    5    5

Is there an operator that could go through A's rows and randomly select a row from B to pair for element wise multiplication? For results something like this:

 C <- A&*&B
 C
 A[1,]*B[3,]
 A[2,]*B[1,]
 A[3,]*B[2,]  
 A[4,]*B[5,] 
 A[5,]*B[3,]  
 A[6,]*B[4,] 
 A[7,]*B[1,]  
 A[8,]*B[5,] 
 A[9,]*B[2,] 
 A[10,]*B[2,]

Thanks!




Aucun commentaire:

Enregistrer un commentaire