Aan de slagGa gratis aan de slag

Ongeldige rijen verwijderen

Nu je de commentaarregels hebt verwijderd, heb je wat informatie gekregen over het algemene formaat van de data. Er moeten minimaal 5 met tabs gescheiden kolommen in de DataFrame staan. Onthoud dat je oorspronkelijke DataFrame maar één kolom heeft, dus je moet de data splitsen op het tab-teken (\t).

De DataFrame annotations_df is al beschikbaar, met de commentaarregels verwijderd. De bibliotheek spark.sql.functions is beschikbaar onder de alias F. Het oorspronkelijke aantal rijen in de DataFrame is opgeslagen in de variabele initial_count.

Deze oefening maakt deel uit van de cursus

Data opschonen met PySpark

Cursus bekijken

Oefeninstructies

  • Maak een nieuwe variabele tmp_fields door de kolom '_c0' van de DataFrame annotations_df te splitsen op het tab-teken.
  • Maak een nieuwe kolom in annotations_df met de naam 'colcount' die het aantal velden uit de vorige stap voorstelt.
  • Filter alle rijen uit annotations_df met minder dan 5 velden.
  • Tel het aantal rijen in de DataFrame en vergelijk dit met initial_count.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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))
Code bewerken en uitvoeren