如何在 R 中向特定矩阵元素添加值?


要向 R 中特定矩阵元素添加值,我们可以使用带单个方括号的子集来获取该特定值。

例如,如果我们有一个名为 M 的矩阵,并且我们想要向第二列的第五个值添加 10,则可以使用以下命令:

M[5,2]<-M[5,2]+10

示例 1

以下代码片段创建了一个示例矩阵:

M1<-matrix(sample(1:100,80),ncol=4)
M1

创建了以下矩阵:

    [,1] [,2] [,3] [,4]
 [1,] 29  72   16   75
 [2,] 5   79   15    4
 [3,] 81   8   46   83
 [4,] 97  50   18   32
 [5,] 62  96   64   82
 [6,] 27  92    9   22
 [7,] 69  37   70   28
 [8,] 20  58   14   66
 [9,] 13  45   19   52
[10,] 11  42   34   80
[11,] 61  99   86   55
[12,] 63   3   78   36
[13,] 53  33    1   40
[14,] 24  77   76    2
[15,] 54  47   48   71
[16,] 87  68   88   38
[17,] 67  12   44   26
[18,] 17   7   91   10
[19,] 49  90   30   59
[20,] 74  51   31   89

要向上面创建的数据框中矩阵 M1 的第一个值添加 1000,请将以下代码添加到上述代码片段中:

M1<-matrix(sample(1:100,80),ncol=4)
M1[1,1]<-M1[1,1]+1000
M1

输出

如果您将上面给出的所有代码片段作为一个程序执行,它将生成以下输出:

      [,1] [,2] [,3]  [,4]
 [1,] 1029  72   16     75
 [2,]    5  79   15      4
 [3,]   81   8   46     83
 [4,]   97  50   18     32
 [5,]   62  96   64     82
 [6,]   27  92    9     22
 [7,]   69  37   70     28
 [8,]   20  58   14     66
 [9,]   13  45   19     52
[10,]   11  42   34     80
[11,]   61  99   86     55
[12,]   63   3   78     36
[13,]   53  33    1     40
[14,]   24  77   76      2
[15,]   54  47   48     71
[16,]   87  68   88     38
[17,]   67  12   44     26
[18,]   17   7   91     10
[19,]   49  90   30     59
[20,]   74  51   31     89

示例 2

以下代码片段创建了一个示例矩阵:

M2<-matrix(rnorm(40),ncol=2)
M2

创建了以下矩阵:

            [,1]      [,2]
[1,]   0.7053897 -1.9200364
[2,]  -1.1234320  1.6390770
[3,]  -0.1418606  2.2555713
[4,]   0.9207447 -1.5381620
[5,]  -0.2770107  0.1623484
[6,]  -0.8251034 -1.3255143
[7,]  -0.4287154 -2.3155433
[8,]  -0.9181893  0.7627583
[9,]  -0.0384247 -0.6836569
[10,]  0.5226378 -0.8815467
[11,] -0.8472512 -0.4861481
[12,]  1.0694954  1.5913287
[13,]  0.6082448 -0.6050546
[14,] -0.3389231 -0.1138805
[15,] -1.6208191 -1.2074059
[16,]  0.5841005 -0.1632070
[17,]  1.4022579 -2.8237466
[18,] -1.3758415 -0.3331492
[19,] -1.0062265  0.2886416
[20,]  2.1965559  0.8964789

要向上面创建的数据框中矩阵 M2 的第二列的第一个值添加 5,请将以下代码添加到上述代码片段中:

M2<-matrix(rnorm(40),ncol=2)
M2[1,2]<-M2[1,2]+5
M2

输出

如果您将上面给出的所有代码片段作为一个程序执行,它将生成以下输出:

            [,1]     [,2]
[1,]   0.7053897  3.0799636
[2,]  -1.1234320  1.6390770
[3,]  -0.1418606  2.2555713
[4,]   0.9207447 -1.5381620
[5,]  -0.2770107  0.1623484
[6,]  -0.8251034 -1.3255143
[7,]  -0.4287154 -2.3155433
[8,]  -0.9181893  0.7627583
[9,]  -0.0384247 -0.6836569
[10,]  0.5226378 -0.8815467
[11,] -0.8472512 -0.4861481
[12,]  1.0694954  1.5913287
[13,]  0.6082448 -0.6050546
[14,] -0.3389231 -0.1138805
[15,] -1.6208191 -1.2074059
[16,]  0.5841005 -0.1632070
[17,]  1.4022579 -2.8237466
[18,] -1.3758415 -0.3331492
[19,] -1.0062265  0.2886416
[20,]  2.1965559  0.8964789

更新于: 2021年11月10日

4K+ 浏览量

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告