如何在R中按行最大值划分矩阵行?

要将矩阵行值除以 R 中的行最大值,我们可以按照以下步骤操作 -

  • 首先,创建一个矩阵。

  • 然后,使用 apply 函数将矩阵行值除以行最大值。

创建矩阵

让我们创建一个矩阵,如下所示 -

例子

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

M

执行时,上述脚本生成以下内容output(this output will vary on your system due to randomization)-

输出

     [,1] [,2] [,3]

[1,]  9    5     6

[2,]  10   2     5

[3,]  4    7     5

[4,]  10   1     4

[5,]  5    1     4

[6,]  8    3     1

[7,]  4    10    10

[8,]  4    4     9

[9,]  6    9     7

[10,] 2    7     7

[11,] 9    5     4

[12,] 10   10   2

[13,] 6    2    3

[14,] 10   6    8

[15,] 9    7    6

[16,] 7    5    8

[17,] 1    8    10

[18,] 3    5    1

[19,] 4 3 5

[20,] 4 3 10

[21,] 5 5 6

[22,] 6 7 10

[23,] 8 1 9

[24,] 3 9 10

[25,] 4 6 10

将矩阵行值除以行最大值

使用 apply 函数将 M 的行值除以行最大值 -

例子

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

M_new<-t(apply(M,1, function(x) x/max(x)))

M_new

输出

         [,1]      [,2]    [,3]

[1,] 1.0000000 0.5555556 0.6666667

[2,] 1.0000000 0.2000000 0.5000000

[3,] 0.5714286 1.0000000 0.7142857

[4,] 1.0000000 0.1000000 0.4000000

[5,] 1.0000000 0.2000000 0.8000000

[6,] 1.0000000 0.3750000 0.1250000

[7,] 0.4000000 1.0000000 1.0000000

[8,] 0.4444444 0.4444444 1.0000000

[9,] 0.6666667 1.0000000 0.7777778

[10,] 0.2857143 1.0000000 1.0000000

[11,] 1.0000000 0.5555556 0.4444444

[12,] 1.0000000 1.0000000 0.2000000

[13,] 1.0000000 0.3333333 0.5000000

[14,] 1.0000000 0.6000000 0.8000000

[15,] 1.0000000 0.7777778 0.6666667

[16,] 0.8750000 0.6250000 1.0000000

[17,] 0.1000000 0.8000000 1.0000000

[18,] 0.6000000 1.0000000 0.2000000

[19,] 0.8000000 0.6000000 1.0000000

[20,] 0.4000000 0.3000000 1.0000000

[21,] 0.8333333 0.8333333 1.0000000

[22,] 0.6000000 0.7000000 1.0000000

[23,] 0.8888889 0.1111111 1.0000000

[24,] 0.3000000 0.9000000 1.0000000

[25,] 0.4000000 0.6000000 1.0000000

以上是 如何在R中按行最大值划分矩阵行? 的全部内容, 来源链接: utcz.com/z/341471.html

回到顶部