Como substituir valores em uma matriz em r (com exemplos)
Você pode usar os seguintes métodos para substituir valores específicos em uma matriz em R:
Método 1: Substitua itens por um valor específico
#replace 5 with 100 my_matrix[my_matrix == 5] <- 100
Método 2: Substitua itens com base em uma condição
#replace elements with value less than 15 with 0 my_matrix[my_matrix < 15] <- 0
Método 3: substituir elementos com base em múltiplas condições
#replace elements with value between 10 and 15 with 99 my_matrix[my_matrix >= 10 & my_matrix <= 15] <- 99
Os exemplos a seguir mostram como usar cada método na prática com a seguinte matriz em 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
Exemplo 1: Substitua itens por um valor específico
O código a seguir mostra como substituir todos os elementos iguais ao valor 5 pelo valor 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
Observe que o elemento igual ao valor 5 foi substituído por um valor de 100 .
Todos os outros elementos permaneceram inalterados na matriz.
Exemplo 2: Substitua elementos com base em uma condição
O código a seguir mostra como substituir todos os elementos com valor menor que 15 pelo valor 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
Observe que cada um dos elementos com valor menor que 15 foi substituído por um valor 0 .
Exemplo 3: Substitua elementos com base em múltiplas condições
O código a seguir mostra como substituir todos os elementos com valor entre 10 e 15 por um valor de 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
Observe que cada um dos elementos com valor entre 10 e 15 foi substituído por um valor de 99 .
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:
Como classificar uma matriz em R
Como remover NA da Matrix em R
Como converter um dataframe em uma matriz em R
Como converter uma tabela em uma matriz em R