Come sostituire zero con na in r (con esempi)


È possibile utilizzare i seguenti metodi per sostituire zero con valori NA in R:

Metodo 1: sostituisci zero con NA in tutte le colonne

 df[df == 0 ] <- NA

Metodo 2: sostituire zero con NA in una colonna

 df$col1[df$col1 == 0 ] <- NA

Metodo 3: sostituire zero con NA in diverse colonne specifiche

 df[, c(' col1 ', ' col2 ')][df[, c(' col1 ', ' col2 ')] == 0 ] <- NA

I seguenti esempi mostrano come utilizzare ciascun metodo nella pratica con il seguente frame di dati:

 #create data frame
df <- data. frame (player=c('A', 'B', 'C', 'D', 'E'),
                 pts=c(17, 12, NA, 9, 25),
                 rebs=c(3, 3, NA, NA, 8),
                 blocks=c(1, 1, 2, 4, NA))

#view data frame
df

  player pts rebs blocks
1 to 17 3 1
2 B 12 3 1
3 C NA NA 2
4 D 9 NA 4
5 E 25 8 NA

Esempio 1: sostituisci zero con NA in tutte le colonne

Il codice seguente mostra come sostituire gli zeri con valori NA in tutte le colonne di un frame di dati:

 #replace zero with NA in all columns
df[df == 0 ] <- NA

#view updated data frame
df

  player pts rebs blocks
1 to 17 3 1
2 B 12 3 1
3 C NA NA 2
4 D 9 NA 4
5 E 25 8 NA

Si noti che gli zeri sono stati sostituiti con valori NA in ciascuna colonna del frame di dati.

Esempio 2: sostituire zero con NA in una colonna

Il codice seguente mostra come sostituire zero con valori NA in una colonna di un frame di dati:

 #replace zero with NA in 'rebs' column only
df$rebs[df$rebs == 0 ] <- NA

#view data frame
player pts rebs blocks
1 to 17 3 1
2 B 12 3 1
3 C 0 NA 2
4 D 9 NA 4
5 E 25 8 0

Da notare che ogni zero è stato sostituito con NA nella colonna “rebs” mentre tutte le altre colonne sono rimaste invariate.

Esempio 3: sostituire zero con NA in diverse colonne specifiche

Il codice seguente mostra come sostituire zero con valori NA in diverse colonne specifiche di un frame di dati:

 #replace zero with NA values in 'pts' and 'rebs' columns only
df[, c(' pts ', ' rebs ')][df[, c(' pts ', ' rebs ')] == 0 ] <- NA

#view data frame
df

  player pts rebs blocks
1 to 17 3 1
2 B 12 3 1
3 C NA NA 2
4 D 9 NA 4
5 E 25 8 0

Da notare che ogni zero è stato sostituito con NA nelle colonne “pts” e “rebs” mentre la colonna “blocks” è rimasta invariata.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in R:

Come sostituire gli spazi vuoti con NA in R
Come sostituire i NA con stringhe in R
Come sostituire NA con Media in R
Come sostituire NA con la mediana in R

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *