LoslegenKostenlos loslegen

Zeilen filtern

Neben dem Auswählen von Spalten kannst du wichtige Teile deines Datensatzes auch herausziehen, indem du Zeilen filterst. Das machst du mit der Funktion filter(). Um filter() zu verwenden, übergibst du ein Tibble und logische Bedingungen. Wenn du zum Beispiel nur die Zeilen zurückgeben willst, in denen die Werte der Spalte x größer als null sind und die Werte von y den Werten von z entsprechen, würdest du Folgendes schreiben.

a_tibble %>%
  filter(x > 0, y == z)

Bevor du die Übung startest, beachte zwei Warnhinweise. Erstens: Verwechsele die filter()-Funktion aus dplyr nicht mit der filter()-Funktion aus dem Paket stats. Zweitens: sparklyr übersetzt deinen dplyr-Code in SQL, bevor er an Spark übergeben wird. Das bedeutet, dass derzeit nur eine begrenzte Anzahl von Filteroperationen unterstützt wird. Du kannst zum Beispiel keine Zeichenkettenzeilen mit regulären Ausdrücken filtern, also kein Code wie

a_tibble %>%
  filter(grepl("a regex", x))

Die Hilfeseite zu translate_sql() beschreibt die verfügbaren Funktionen. Du kannst Vergleichsoperatoren wie >, != und %in% verwenden; arithmetische Operatoren wie +, ^ und %%; und logische Operatoren wie &, | und !. Viele mathematische Funktionen wie log(), abs(), round() und sin() werden ebenfalls unterstützt.

Wie zuvor funktioniert das Indizieren mit eckigen Klammern derzeit nicht.

Diese Übung ist Teil des Kurses

Einführung in Spark mit sparklyr in R

Kurs anzeigen

Anleitung zur Übung

Eine Spark-Verbindung wurde als spark_conn für dich erstellt. Ein Tibble, das mit den in Spark gespeicherten Track-Metadaten verknüpft ist, wurde als track_metadata_tbl vordefiniert.

  • Wähle wie in der vorherigen Übung artist_name, release, title und year mit select() aus.
  • Übergib das Ergebnis mit einer Pipe an filter(), um die Tracks aus den 1960ern zu erhalten.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# track_metadata_tbl has been pre-defined
glimpse(track_metadata_tbl)

# Manipulate the track metadata
track_metadata_tbl %>%
  # Select columns
  ___ %>%
  # Filter rows
  ___
Code bearbeiten und ausführen