Come sostituire na con zero in dplyr
È possibile utilizzare la seguente sintassi per sostituire tutti i valori NA con zero in un frame di dati utilizzando il pacchetto dplyr in R:
#replace all NA values with zero df <- df %>% replace(is. na (.), 0)
È possibile utilizzare la seguente sintassi per sostituire i valori NA in una colonna specifica di un frame di dati:
#replace NA values with zero in column named col1 df <- df %>% mutate(col1 = ifelse(is. na (col1), 0, col1))
E puoi utilizzare la seguente sintassi per sostituire il valore NA in una delle tante colonne in un frame di dati:
#replace NA values with zero in columns col1 and col2 df <- df %>% mutate(col1 = ifelse(is. na (col1), 0, col1), col2 = ifelse(is. na (col2), 0, col2))
I seguenti esempi mostrano come utilizzare concretamente queste funzioni con il seguente blocco 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 tutti i valori NA in tutte le colonne
Il codice seguente mostra come sostituire tutti i valori NA in tutte le colonne in un frame di dati:
library (dplyr) #replace all NA values with zero df <- df %>% replace(is. na (.), 0) #view data frame df player pts rebs blocks 1 to 17 3 1 2 B 12 3 1 3 C 0 0 2 4 D 9 0 4 5 E 25 8 0
Esempio 2: sostituisci i valori NA in una colonna specifica
Il codice seguente mostra come sostituire i valori NA in una colonna specifica di un frame di dati:
library (dplyr) #replace NA values with zero in rebs column only df <- df %>% mutate(rebs = ifelse(is. na (rebs), 0, rebs)) #view data frame df player pts rebs blocks 1 to 17 3 1 2 B 12 3 1 3 C NA 0 2 4 D 9 0 4 5 E 25 8 NA
Esempio 3: sostituisci i valori NA in una delle diverse colonne
Il codice seguente mostra come sostituire i valori NA in una delle tante colonne in un frame di dati:
library (dplyr) #replace NA values with zero in rebs and pts columns df <- df %>% mutate(rebs = ifelse(is. na (rebs), 0, rebs), pts = ifelse(is. na (pts), 0, pts)) #view data frame df player pts rebs blocks 1 to 17 3 1 2 B 12 3 1 3 C 0 0 2 4 D 9 0 4 5 E 25 8 NA
Risorse addizionali
Come filtrare le righe contenenti una determinata stringa utilizzando dplyr
Come calcolare le frequenze relative utilizzando dplyr
Come selezionare la prima riga per gruppo utilizzando dplyr