Ungültige Zeilen entfernen
Nachdem du die kommentierten Zeilen erfolgreich entfernt hast, hast du Informationen zum allgemeinen Format der Daten erhalten. Es sollten mindestens 5 tabgetrennte Spalten im DataFrame vorhanden sein. Denk daran: Dein ursprüngliches DataFrame hat nur eine einzige Spalte, daher musst du die Daten an den Tabulator-Zeichen (\t) aufteilen.
Das DataFrame annotations_df ist bereits verfügbar, die kommentierten Zeilen sind entfernt. Die Bibliothek spark.sql.functions ist unter dem Alias F verfügbar. Die anfängliche Anzahl an Zeilen im DataFrame ist in der Variable initial_count gespeichert.
Diese Übung ist Teil des Kurses
Datenbereinigung mit PySpark
Anleitung zur Übung
- Erzeuge eine neue Variable
tmp_fields, indem du die Spalte'_c0'aus dem DataFrameannotations_dfam Tabulator-Zeichen aufteilst. - Erzeuge eine neue Spalte in
annotations_dfmit dem Namen'colcount', die die Anzahl der im vorherigen Schritt bestimmten Felder enthält. - Filtere alle Zeilen aus
annotations_dfheraus, die weniger als 5 Felder enthalten. - Zähle die Anzahl der Zeilen im DataFrame und vergleiche sie mit
initial_count.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Split _c0 on the tab character and store the list in a variable
tmp_fields = ____(annotations_df['_c0'], ____)
# Create the colcount column on the DataFrame
annotations_df = annotations_df.____('____', ____(____))
# Remove any rows containing fewer than 5 fields
annotations_df_filtered = annotations_df.____(~ (____))
# Count the number of rows
final_count = ____
print("Initial count: %d\nFinal count: %d" % (initial_count, final_count))