Come sostituire i valori in una matrice in r (con esempi)
È possibile utilizzare i seguenti metodi per sostituire valori specifici in una matrice in R:
Metodo 1: sostituisci gli elementi con un valore specifico
#replace 5 with 100 my_matrix[my_matrix == 5] <- 100
Metodo 2: sostituisci gli elementi in base a una condizione
#replace elements with value less than 15 with 0 my_matrix[my_matrix < 15] <- 0
Metodo 3: sostituzione di elementi in base a più condizioni
#replace elements with value between 10 and 15 with 99 my_matrix[my_matrix >= 10 & my_matrix <= 15] <- 99
I seguenti esempi mostrano come utilizzare in pratica ciascun metodo con la seguente matrice in 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
Esempio 1: sostituisci gli elementi con un valore specifico
Il codice seguente mostra come sostituire tutti gli elementi uguali al valore 5 con il valore 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
Da notare che l’elemento pari al valore 5 è stato sostituito con il valore 100 .
Tutti gli altri elementi sono rimasti invariati nella matrice.
Esempio 2: sostituire gli elementi in base a una condizione
Il codice seguente mostra come sostituire tutti gli elementi con un valore inferiore a 15 con il valore 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
Si noti che ciascuno degli elementi con un valore inferiore a 15 è stato sostituito con un valore pari a 0 .
Esempio 3: sostituzione di elementi in base a più condizioni
Il codice seguente mostra come sostituire tutti gli elementi con un valore compreso tra 10 e 15 con un valore di 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
Si noti che ciascuno degli elementi con un valore compreso tra 10 e 15 è stato sostituito con un valore di 99 .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in R:
Come ordinare una matrice in R
Come rimuovere NA da Matrix in R
Come convertire un dataframe in una matrice in R
Come convertire una tabella in una matrice in R