Как заменить значения в матрице в 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

Способ 3: замена элементов на основе нескольких условий

 #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. Замена элементов на основе нескольких условий

Следующий код показывает, как заменить все элементы со значением от 10 до 15 на значение 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

Обратите внимание, что каждый из элементов со значением от 10 до 15 был заменен значением 99 .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:

Как отсортировать матрицу в R
Как удалить NA из матрицы в R
Как преобразовать фрейм данных в матрицу в R
Как преобразовать таблицу в матрицу в R

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *