Hoe rijen met na in een specifieke kolom in r te verwijderen


U kunt een van de volgende drie methoden gebruiken om rijen met NA in een specifieke kolom van een dataframe in R te verwijderen:

 #use is.na() method
df[!is. na (df$col_name),]

#use subset() method
subset(df, !is. na (col_name))

#use tidyr method
library (tidyr)
df %>% drop_na(col_name)

Merk op dat elk van deze methoden dezelfde resultaten zal opleveren.

De volgende voorbeelden laten zien hoe u elk van deze methoden in de praktijk kunt gebruiken met het volgende dataframe:

 #create data frame
df <- data. frame (a = c(NA, 14, 19, 22, 26),
                 b = c(14, NA, 9, NA, 5),
                 c = c(45, 56, 54, 57, 59))

#view data frame
df

ABC
1 NA 14 45
2 14 NA 56
3 19 9 54
4 22 NA 57
5 26 5 59

Methode 1: Rijen met NA verwijderen met is.na()

De volgende code laat zien hoe u rijen uit het dataframe met NA-waarden in een bepaalde kolom verwijdert met behulp van de is.na() -methode:

 #remove rows from data frame with NA values in column 'b'
df[!is. na (df$b),]

   ABC
1 NA 14 45
3 19 9 54
5 26 5 59

Methode 2: Rijen met NA verwijderen met subset()

De volgende code laat zien hoe u rijen uit het dataframe met NA-waarden in een bepaalde kolom verwijdert met behulp van de subset() -methode:

 #remove rows from data frame with NA values in column 'b'
subset(df, !is. na (b))

   ABC
1 NA 14 45
3 19 9 54
5 26 5 59

Methode 3: Rijen met NA neerzetten met drop_na()

De volgende code laat zien hoe u rijen uit het dataframe met NA-waarden in een bepaalde kolom kunt verwijderen met behulp van de drop_na() -methode:

 library (tidyr)

#remove rows from data frame with NA values in column 'b'
df %>% drop_na(b)

   ABC
1 NA 14 45
3 19 9 54
5 26 5 59

Merk op dat elk van de drie methoden hetzelfde resultaat opleverde.

Opmerking: u kunt hier de volledige online documentatie voor de drop_na()-methode vinden.

Aanvullende bronnen

Hoe u een functie toepast op elke rij dataframes in R
Regelnummers ophalen in R
Rijen toevoegen aan een dataframe in R

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert