Erste SchritteKostenlos loslegen

Weiteres Parsing

Du hast diesen Datensatz in ein deutlich anderes Format gebracht als zuvor, aber es gibt noch ein paar Dinge zu tun. Du musst die Spaltendaten für die spätere Analyse vorbereiten und ein paar Zwischenspalten entfernen.

Der Kontext spark ist verfügbar und pyspark.sql.functions wird als F aliiert. Die Typen von pyspark.sql.types sind bereits importiert. Der DataFrame split_df ist so, wie du ihn zuletzt verlassen hast. Vergiss nicht, dass du .printSchema() für einen DataFrame im Konsolenbereich verwenden kannst, um die Spaltennamen und -typen anzuzeigen.

⚠️ Hinweis: Wenn du eine AttributeError siehst, aktualisiere die Übungen und klicke auf Lösung ausführen, ohne auf Code ausführen zu klicken.

Diese Übung ist Teil des Kurses

Daten bereinigen mit PySpark

Kurs anzeigen

Anleitung zur Übung

  • Erstelle eine neue Funktion namens retriever, die zwei Argumente benötigt: die geteilten Spalten (cols) und die Gesamtzahl der Spalten (colcount). Diese Funktion sollte eine Liste der Einträge zurückgeben, die noch nicht als Spalten definiert wurden (d.h. alles nach Punkt 4 in der Liste).
  • Definiere die Funktion als Spark UDF, die ein Array mit Strings zurückgibt.
  • Erstelle die neue Spalte dog_list unter Verwendung der UDF und der verfügbaren Spalten im DataFrame.
  • Entferne die Spalten _c0, colcount, und split_cols.

Interaktive Übung zum Anfassen

Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.

def retriever(____, ____):
  # Return a list of dog data
  return ____[4:____]

# Define the method as a UDF
udfRetriever = ____(____, ArrayType(____))

# Create a new column using your UDF
split_df = split_df.withColumn('dog_list', ____(____, ____))

# Remove the original column, split_cols, and the colcount
split_df = split_df.drop('____').____('____').____('____')
Bearbeiten und Ausführen von Code