好的标题很复杂,但实际上很容易解释:-)
我有一个Matrix M:
M<-matrix(c(1,3,4,5,7,6,2, 2,5,1,3,4,7,6, 1,7,3,2,5,4,6),nrow=3,ncol=7, byrow=TRUE)
[,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,] 1 3 4 5 NA 6 2
[2,] 2 5 1 3 4 7 6
[3,] 1 7 3 2 5 4 NA
我有一个权重为W的向量:
W<-c(0.4,0.2,0.15,0.1,0.07,0.05,0.02)
现在,我想根据矩阵中的数字替换矩阵中的所有值,并使用相应位置上的向量中的值。因此,我得到的矩阵(必须是矩阵)应如下所示:
[,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,] 0.4 0.15 0.1 0.07 NA 0.05 0.2
[2,] 0.2 0.07 0.4 0.15 0.1 0.02 0.05
[3,] 0.4 0.02 0.15 0.2 0.07 0.1 NA
但我不知道如何实现这一目标。
M2<-W[M]
没有达到预期的结果..任何建议?
matrix(W[M], nrow=nrow(M))
[,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,] 0.4 0.15 0.10 0.07 NA 0.05 0.20
[2,] 0.2 0.07 0.40 0.15 0.10 0.02 0.05
[3,] 0.4 0.02 0.15 0.20 0.07 0.10 NA
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句