如何按R中的行方差划分矩阵值?
要将矩阵行值除以R中的行方差,我们可以按照以下步骤操作-
首先,创建一个矩阵。
然后,使用apply函数将矩阵行值除以行方差。
创建矩阵
让我们创建一个矩阵,如下所示-
M<-matrix(sample(1:20,75,replace=TRUE),ncol=3) M
执行时,上述脚本生成以下内容output(thisoutputwillvaryonyoursystemduetorandomization)-
[,1] [,2] [,3] [1,] 13 2 15 [2,] 18 16 6 [3,] 10 18 12 [4,] 19 5 19 [5,] 12 13 2 [6,] 11 8 7 [7,] 3 18 7 [8,] 5 17 12 [9,] 7 17 14 [10,] 4 18 2 [11,] 15 2 5 [12,] 1 14 9 [13,] 4 19 2 [14,] 16 13 5 [15,] 15 15 19 [16,] 12 1 2 [17,] 10 16 5 [18,] 6 4 19 [19,] 17 12 15 [20,] 6 9 9 [21,] 13 2 18 [22,] 15 1 15 [23,] 1 14 9 [24,] 7 4 8 [25,] 16 1 17
将矩阵行值除以行方差
使用apply函数将M的行值除以行方差-
M<-matrix(sample(1:20,75,replace=TRUE),ncol=3) M_new<-t(apply(M,1, function(x) x/var(x))) M_new
输出
[,1] [,2] [,3] [1,] 0.26530612 0.04081633 0.30612245 [2,] 0.43548387 0.38709677 0.14516129 [3,] 0.57692308 1.03846154 0.69230769 [4,] 0.29081633 0.07653061 0.29081633 [5,] 0.32432432 0.35135135 0.05405405 [6,] 2.53846154 1.84615385 1.61538462 [7,] 0.04972376 0.29834254 0.11602210 [8,] 0.13761468 0.46788991 0.33027523 [9,] 0.26582278 0.64556962 0.53164557 [10,] 0.05263158 0.23684211 0.02631579 [11,] 0.32374101 0.04316547 0.10791367 [12,] 0.02325581 0.32558140 0.20930233 [13,] 0.04633205 0.22007722 0.02316602 [14,] 0.49484536 0.40206186 0.15463918 [15,] 2.81250000 2.81250000 3.56250000 [16,] 0.32432432 0.02702703 0.05405405 [17,] 0.32967033 0.52747253 0.16483516 [18,] 0.09045226 0.06030151 0.28643216 [19,] 2.68421053 1.89473684 2.36842105 [20,] 2.00000000 3.00000000 3.00000000 [21,] 0.19402985 0.02985075 0.26865672 [22,] 0.22959184 0.01530612 0.22959184 [23,] 0.02325581 0.32558140 0.20930233 [24,] 1.61538462 0.92307692 1.84615385 [25,] 0.19917012 0.01244813 0.21161826