我正在尝试从 R 中的数据框进行矩阵乘法。 乘法是这样一种方式,即第一个数组是数据帧 (1x6) 中每一列的所有元素。然后我们将它与相关矩阵 (6x6) 相乘,并再次与第一个数组 (6x1) 的转置相乘,得到最终结果。这必须在数据框的所有行上完成
这是我在 excel 中如何做的图像
A <- c(2,3,4,5,6)
B <- c(4,5,6,7,8)
C <- c(6,7,8,9,10)
D <- c(8,9,10,11,12)
E <- c(10,11,12,13,14)
F <- c(12,13,14,15,16)
df <- data.frame (A,B,C,D,E,F)
## 6x6 correlation matrix
corr <- matrix(
c(1,0,0,0,0,0,
0,1,0,0,0,0,
0,0,1,.6,.6,.5,
0,0,.6,1,.6,.7,
0,0,.6,.6,1,.6,
0,0,.5,.7,.6,1),
nrow = 6,ncol =6, byrow = TRUE)
我需要在 df 中添加另一个 col,第 1 行的结果 = [2,4,6,8,10,12]* corr * transpose[2,4,6,8,10,12]