So löschen sie zeilen mit na-werten mit dplyr


Sie können die folgenden Methoden aus dem dplyr- Paket verwenden, um Zeilen mit NA-Werten zu entfernen:

Methode 1: Entfernen Sie Zeilen mit NA-Werten in einer beliebigen Spalte

 library (dplyr)

#remove rows with NA value in any column
df %>%
  n / A. omit ()

Methode 2: Zeilen mit NA-Werten in bestimmten Spalten entfernen

 library (dplyr)

#remove rows with NA value in 'col1' or 'col2'
df %>%
  filter_at(vars(col1, col2), all_vars( ! is. na (.)))

Methode 3: Zeilen mit NA-Werten in einer bestimmten Spalte entfernen

 library (dplyr)

#remove rows with NA value in 'col1'
df %>%
  filter( ! is. na (col1))

Die folgenden Beispiele zeigen, wie Sie diese Methoden in der Praxis mit dem folgenden Datenrahmen anwenden können:

 #create data frame with some missing values
df <- data. frame (team=c('A', 'A', 'B', 'B', 'C'),
                 points=c(99, 90, 86, 88, NA),
                 assists=c(33, NA, 31, 39, 34),
                 rebounds=c(NA, 28, 24, 24, 28))

#view data frame
df

  team points assists rebounds
1 A 99 33 NA
2 A 90 NA 28
3 B 86 31 24
4 B 88 39 24
5 C NA 34 28

Methode 1: Entfernen Sie Zeilen mit NA-Werten in einer beliebigen Spalte

Der folgende Code zeigt, wie Zeilen mit NA-Werten in einer beliebigen Spalte des Datenrahmens entfernt werden:

 library (dplyr)

#remove rows with NA value in any column
df %>%
  n / A. omit ()

  team points assists rebounds
3 B 86 31 24
4 B 88 39 24

Die einzigen verbleibenden Zeilen sind diejenigen ohne NA-Werte in einer Spalte.

Methode 2: Zeilen mit NA-Werten in bestimmten Spalten entfernen

Der folgende Code zeigt, wie Zeilen mit NA-Werten in einer beliebigen Spalte des Datenrahmens entfernt werden:

 library (dplyr)

#remove rows with NA value in 'points' or 'assists' columns
df %>%
  filter_at(vars(points, assists), all_vars( ! is. na (.)))

  team points assists rebounds
1 A 99 33 NA
2 B 86 31 24
3 B 88 39 24

Die einzigen verbleibenden Zeilen sind diejenigen ohne NA-Werte in den Spalten „Punkte“ oder „Assists“.

Methode 3: Zeilen mit NA-Werten in einer bestimmten Spalte entfernen

Der folgende Code zeigt, wie Zeilen mit NA-Werten in einer bestimmten Spalte des Datenrahmens entfernt werden:

 library (dplyr)

#remove rows with NA value in 'points' column
df %>%
  filter( ! is. na (dots))

  team points assists rebounds
1 A 99 33 NA
2 A 90 NA 28
3 B 86 31 24
4 B 88 39 24

Die einzigen verbleibenden Zeilen sind diejenigen ohne NA-Wert in der Spalte „Punkte“.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erklärt, wie Sie andere häufige Vorgänge mit dplyr ausführen:

dplyr: So filtern Sie Zeilen, die bestimmte Zeichenfolgen enthalten
dplyr: So ersetzen Sie NA-Werte durch Null
dplyr: So verwenden Sie einen „nicht enthaltenen“ Filter

Einen Kommentar hinzufügen

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