Inizia subitoInizia gratis

Aggiungere un campo ID

Quando lavori con i dati, a volte vuoi accedere solo a determinati campi ed eseguire varie operazioni. In questo caso, trova tutti i nomi di elettori univoci nel DataFrame e aggiungi un ID numerico univoco. Ricorda che gli ID in Spark sono assegnati in base alla partizione del DataFrame: per questo i valori degli ID possono essere molto più grandi del numero effettivo di righe nel DataFrame.

Con l’elaborazione lazy di Spark, gli ID non vengono effettivamente generati finché non esegui un’azione e possono risultare in parte casuali a seconda della dimensione del dataset.

La sessione spark e un DataFrame Spark df contenente il file DallasCouncilVotes.csv.gz sono disponibili nel tuo workspace. La libreria pyspark.sql.functions è disponibile con l’alias F.

Questo esercizio fa parte del corso

Pulizia dei dati con PySpark

Visualizza corso

Istruzioni dell'esercizio

  • Seleziona le voci univoche dalla colonna VOTER NAME e crea un nuovo DataFrame chiamato voter_df.
  • Conta le righe del DataFrame voter_df.
  • Aggiungi una colonna ROW_ID usando l’apposita funzione di Spark.
  • Mostra le righe con i 10 ROW_ID più alti.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# 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(____)
Modifica ed esegui il codice