Adăugarea unui câmp ID
Când lucrezi cu date, uneori vrei să accesezi doar anumite câmpuri și să efectuezi diverse operații asupra lor. În acest exercițiu, găsește toate numele unice ale alegătorilor din DataFrame și adaugă un număr ID unic fiecăruia. Reține că ID-urile în Spark sunt atribuite în funcție de partiția DataFrame-ului – prin urmare, valorile ID pot fi mult mai mari decât numărul efectiv de rânduri din DataFrame.
Datorită procesării lazy din Spark, ID-urile nu sunt generate efectiv până când nu se execută o acțiune și pot varia în funcție de dimensiunea setului de date.
Sesiunea spark și un DataFrame Spark df care conține fișierul DallasCouncilVotes.csv.gz sunt disponibile în spațiul tău de lucru. Biblioteca pyspark.sql.functions este disponibilă sub aliasul F.
Acest exercițiu face parte din cursul
Curățarea datelor cu PySpark
Instrucțiuni pentru exercițiu
- Selectează intrările unice din coloana
VOTER NAMEși creează un nou DataFrame numitvoter_df. - Numără rândurile din DataFrame-ul
voter_df. - Adaugă o coloană ROW_ID folosind funcția Spark potrivită.
- Afișează rândurile cu cele mai mari 10 valori ROW_ID.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Select all the unique council voters
voter_df = df.____(df["VOTER NAME"]).____()
# Count the rows in voter_df
print("\nThere are %d rows in the voter_df DataFrame.\n" % ____)
# Add a ROW_ID
voter_df = voter_df.____('ROW_ID', F.____())
# Show the rows with 10 highest IDs in the set
voter_df.orderBy(voter_df.____.desc()).show(____)