Hoe lege regels uit het dataframe in r te verwijderen


U kunt de volgende methoden gebruiken om lege regels uit een dataframe in R te verwijderen:

Methode 1: Verwijder rijen met NA in alle kolommen

 df[rowSums(is. na (df)) != ncol(df), ]

Methode 2: Verwijder rijen met NA in ten minste één kolom

 df[complete. boxes (df), ]

De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken.

Voorbeeld 1: Verwijder rijen met NA in alle kolommen

Stel dat we het volgende dataframe in R hebben:

 #create data frame
df <- data. frame (x=c(3, 4, NA, 6, 8, NA),
                 y=c(NA, 5, NA, 2, 2, 5),
                 z=c(1, 2, NA, 6, 8, NA))

#view data frame
df

   X Y Z
1 3 NA 1
2 4 5 2
3 NA NA NA
4 6 2 6
5 8 2 8
6 NA 5 NA

We kunnen de volgende code gebruiken om rijen uit het dataframe te verwijderen die NA-waarden in elke kolom hebben:

 #remove rows with NA in all columns
df[rowSums(is. na (df)) != ncol(df), ]

   X Y Z
1 3 NA 1
2 4 5 2
4 6 2 6
5 8 2 8
6 NA 5 NA

Merk op dat de rij met de NA-waarden in elke kolom is verwijderd.

Voorbeeld 2: Verwijder rijen met NA in ten minste één kolom

Laten we opnieuw aannemen dat we het volgende dataframe in R hebben:

 #create data frame
df <- data. frame (x=c(3, 4, NA, 6, 8, NA),
                 y=c(NA, 5, NA, 2, 2, 5),
                 z=c(1, 2, NA, 6, 8, NA))

#view data frame
df

   X Y Z
1 3 NA 1
2 4 5 2
3 NA NA NA
4 6 2 6
5 8 2 8
6 NA 5 NA

We kunnen de volgende code gebruiken om rijen uit het dataframe te verwijderen die NA-waarden in ten minste één kolom hebben:

 #remove rows with NA in at least one column
df[complete. boxes (df), ]

  X Y Z
2 4 5 2
4 6 2 6
5 8 2 8

Houd er rekening mee dat alle rijen met een NA-waarde in ten minste één kolom zijn verwijderd.

Gerelateerd: Complete.cases gebruiken in R (met voorbeelden)

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in R kunt uitvoeren:

Hoe maak je een leeg dataframe in R
Hoe maak je een lege lijst in R
Hoe maak je een lege vector in R

Einen Kommentar hinzufügen

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