如何在 R 矩陣中將行值除以行均值?


要在 R 矩陣中將矩陣行值除以行均值,我們可以按照以下步驟操作 −

  • 首先,建立一個矩陣。
  • 然後,使用 apply 函式將矩陣行值除以行均值。

建立矩陣

讓我們建立一個如下所示的矩陣 −

 演示

M<-matrix(sample(1:10,75,replace=TRUE),ncol=3)
M

執行時,以上指令碼生成以下輸出(由於隨機性,此輸出在您的系統中會有所不同) −

  [,1] [,2] [,3]
[1,] 9 1 5
[2,] 1 7 5
[3,] 6 7 5
[4,] 6 2 6
[5,] 9 8 7
[6,] 5 7 1
[7,] 9 5 1
[8,] 4 9 4
[9,] 10 2 6
[10,] 3 2 6
[11,] 2 5 1
[12,] 10 2 7
[13,] 4 8 1
[14,] 9 2 4
[15,] 2 1 7
[16,] 3 9 6
[17,] 7 10 7
[18,] 6 4 3
[19,] 2 10 6
[20,] 10 4 10
[21,] 8 5 8
[22,] 9 4 10
[23,] 10 7 1
[24,] 1 2 6
[25,] 2 10 8

將矩陣行值除以行均值

使用 apply 函式將矩陣 M 的行值除以行均值 −

 演示

M<-matrix(sample(1:10,75,replace=TRUE),ncol=3)
M_new<-t(apply(M,1, function(x) x/mean(x)))
M_new

輸出

        [,1]       [,2]     [,3]
[1,] 1.8000000 0.2000000 1.0000000
[2,] 0.2307692 1.6153846 1.1538462
[3,] 1.0000000 1.1666667 0.8333333
[4,] 1.2857143 0.4285714 1.2857143
[5,] 1.1250000 1.0000000 0.8750000
[6,] 1.1538462 1.6153846 0.2307692
[7,] 1.8000000 1.0000000 0.2000000
[8,] 0.7058824 1.5882353 0.7058824
[9,] 1.6666667 0.3333333 1.0000000
[10,] 0.8181818 0.5454545 1.6363636
[11,] 0.7500000 1.8750000 0.3750000
[12,] 1.5789474 0.3157895 1.1052632
[13,] 0.9230769 1.8461538 0.2307692
[14,] 1.8000000 0.4000000 0.8000000
[15,] 0.6000000 0.3000000 2.1000000
[16,] 0.5000000 1.5000000 1.0000000
[17,] 0.8750000 1.2500000 0.8750000
[18,] 1.3846154 0.9230769 0.6923077
[19,] 0.3333333 1.6666667 1.0000000
[20,] 1.2500000 0.5000000 1.2500000
[21,] 1.1428571 0.7142857 1.1428571
[22,] 1.1739130 0.5217391 1.3043478
[23,] 1.6666667 1.1666667 0.1666667
[24,] 0.3333333 0.6666667 2.0000000
[25,] 0.3000000 1.5000000 1.2000000

更新日期:13-8-2021

204 次檢視

開啟你的 職業生涯

完成課程以獲得認證

開始
廣告