ComeçarComece de graça

Análise adicional

Você moldou esse conjunto de dados em um formato significativamente diferente do que era antes, mas ainda há algumas coisas a fazer. Você precisa preparar os dados da coluna para uso em análises posteriores e remover algumas colunas intermediárias.

O contexto spark está disponível e pyspark.sql.functions tem como alias o endereço F. Os tipos de pyspark.sql.types já foram importados. O DataFrame split_df está como você o deixou pela última vez. Lembre-se de que você pode usar .printSchema() em um DataFrame na área do console para visualizar os nomes e tipos de coluna.

⚠️ Nota: Se você vir um AttributeError, atualize os exercícios e clique em Run Solution sem clicar em Run Code.

Este exercício faz parte do curso

Limpeza de dados com o PySpark

Ver curso

Instruções do exercício

  • Crie uma nova função chamada retriever que recebe dois argumentos, as colunas divididas (cols) e o número total de colunas (colcount). Essa função deve retornar uma lista das entradas que ainda não foram definidas como colunas (ou seja, tudo após o item 4 da lista).
  • Defina a função como um Spark UDF, retornando uma matriz de strings.
  • Crie a nova coluna dog_list usando o endereço UDF e as colunas disponíveis no DataFrame.
  • Remova as colunas _c0, colcount e split_cols.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

def retriever(____, ____):
  # Return a list of dog data
  return ____[4:____]

# Define the method as a UDF
udfRetriever = ____(____, ArrayType(____))

# Create a new column using your UDF
split_df = split_df.withColumn('dog_list', ____(____, ____))

# Remove the original column, split_cols, and the colcount
split_df = split_df.drop('____').____('____').____('____')
Editar e executar o código