如何在r中替换矩阵中的值(附示例)


可以使用以下方法来替换R中矩阵中的特定值:

方法1:用特定值替换项目

 #replace 5 with 100
my_matrix[my_matrix == 5] <- 100

方法2:根据条件替换项目

 #replace elements with value less than 15 with 0
my_matrix[my_matrix < 15] <- 0

方法三:根据多种条件替换元素

 #replace elements with value between 10 and 15 with 99
my_matrix[my_matrix >= 10 & my_matrix <= 15] <- 99

以下示例展示了如何在 R 中使用以下矩阵来实际使用每种方法:

 #create matrix
my_matrix <- matrix(1:20, nrow = 5 )

#display matrix
my_matrix

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

示例 1:用特定值替换项目

以下代码显示如何将所有等于值5的元素替换为值100

 #replace 5 with 100
my_matrix[my_matrix == 5] <- 100

#view updated matrix
my_matrix

     [,1] [,2] [,3] [,4]
[1,] 1 6 11 16
[2,] 2 7 12 17
[3,] 3 8 13 18
[4,] 4 9 14 19
[5,] 100 10 15 20

请注意,等于值5的元素已替换为值100

矩阵中的所有其他元素保持不变。

示例 2:根据条件替换元素

以下代码展示了如何将所有小于15的元素替换为值0

 #replace elements with value less than 15 with 100
my_matrix[my_matrix < 15] <- 0

#view updated matrix
my_matrix

     [,1] [,2] [,3] [,4]
[1,] 0 0 0 16
[2,] 0 0 0 17
[3,] 0 0 0 18
[4,] 0 0 0 19
[5,] 0 0 15 20

请注意,每个值小于15的元素都已替换为值0

示例3:根据多个条件替换元素

以下代码显示如何将值在1015之间的所有元素替换为值99

 #replace elements with value between 10 and 15 with 99
my_matrix[my_matrix >= 10 & my_matrix <= 15] <- 99

#view updated matrix
my_matrix

     [,1] [,2] [,3] [,4]
[1,] 1 6 99 16
[2,] 2 7 99 17
[3,] 3 8 99 18
[4,] 4 9 99 19
[5,] 5 99 99 20

请注意,值在1015之间的每个元素都已替换为值99

其他资源

以下教程解释了如何在 R 中执行其他常见任务:

如何在 R 中对矩阵进行排序
如何从 R 矩阵中删除 NA
如何在 R 中将数据帧转换为矩阵
如何在 R 中将表格转换为矩阵

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注