Come eliminare righe con alcune o tutte le na in r


Spesso potresti voler rimuovere righe contenenti alcuni o tutti i NA (valori mancanti) in un frame di dati in R.

Questo tutorial spiega come rimuovere queste righe utilizzando Basic R e il pacchetto Tidyr . Utilizzeremo il seguente frame di dati per ciascuno dei seguenti esempi:

 #create data frame with some missing values
df <- data.frame(points = c(12, NA, 19, 22, 32),
                 assists = c(4, NA, 3, NA, 5),
                 rebounds = c(5, NA, 7, 12, NA))

#view data frame
df

  points assists rebounds
1 12 4 5
2 NA NA NA
3 19 3 7
4 22 NA 12
5 32 5 NA

Rimuovere le NA utilizzando la Base R

Il codice seguente mostra come utilizzare complete.cases() per rimuovere tutte le righe in un frame di dati che hanno un valore mancante in una colonna:

 #remove all rows with a missing value in any column
df[ complete.cases (df),]

  points assists rebounds
1 12 4 5
3 19 3 7

Il codice seguente mostra come utilizzare complete.cases() per rimuovere tutte le righe in un frame di dati che presentano un valore mancante in colonne specifiche :

 #remove all rows with a missing value in the third column
df[ complete.cases (df[,3]),]

  points assists rebounds
1 12 4 5
3 19 3 7
4 22 NA 12

#remove all rows with a missing value in either the first or third column
df[ complete.cases (df[ , c(1,3)]),]

  points assists rebounds
1 12 4 5
3 19 3 7
4 22 NA 12

Elimina le NA utilizzando Tidyr

Il codice seguente mostra come utilizzare drop_na() dal pacchetto Tidyr per eliminare tutte le righe in un frame di dati che hanno un valore mancante in una colonna:

 #load tidyr package
library(tidyr)

#remove all rows with a missing value in any column
df %>% drop_na()

  points assists rebounds
1 12 4 5
3 19 3 7

Il codice seguente mostra come utilizzare drop_na() dal pacchetto Tidyr per eliminare tutte le righe in un frame di dati che hanno un valore mancante in colonne specifiche :

 #load tidyr package
library(tidyr)

#remove all rows with a missing value in the third column
df %>% drop_na(rebounds)

  points assists rebounds
1 12 4 5
3 19 3 7
4 22 NA 12

Puoi trovare altri tutorial su R qui .

Aggiungi un commento

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