Adicionando um campo ID
Ao trabalhar com dados, às vezes você só quer acessar determinados campos e realizar várias operações. Nesse caso, encontre todos os nomes exclusivos de eleitores no DataFrame e adicione um número exclusivo ID. Lembre-se de que os IDs do Spark são atribuídos com base na partição do DataFrame - portanto, os valores ID podem ser muito maiores do que o número real de linhas no DataFrame.
Com o processamento preguiçoso do Spark, os IDs não são realmente gerados até que uma ação seja executada e podem ser um tanto aleatórios, dependendo do tamanho do conjunto de dados.
A sessão spark
e um DataFrame Spark df
contendo o arquivo DallasCouncilVotes.csv.gz
estão disponíveis em seu espaço de trabalho. A biblioteca pyspark.sql.functions
está disponível sob o pseudônimo F
.
Este exercício faz parte do curso
Limpeza de dados com o PySpark
Instruções do exercício
- Selecione as entradas exclusivas da coluna
VOTER NAME
e crie um novo DataFrame chamadovoter_df
. - Contar as linhas no DataFrame
voter_df
. - Adicione uma coluna ROW_ID usando a função Spark apropriada.
- Mostre as linhas com os 10 maiores ROW_IDs.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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(____)