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