ComeçarComece gratuitamente

Seleção

A variante do Spark correspondente ao SELECT do SQL é o método .select(). Esse método recebe vários argumentos – um para cada coluna que você deseja selecionar. Esses argumentos podem ser o nome da coluna como uma string (um para cada coluna) ou um objeto de coluna (usando a sintaxe df.colName ). Ao passar um objeto de coluna, você pode realizar operações como soma ou subtração com a coluna para alterar os dados contidos nela, de forma muito semelhante ao que é feito em .withColumn().

A diferença entre os métodos .select() e .withColumn() é que .select() retorna somente as colunas que você especificar, enquanto .withColumn() retorna todas as colunas do DataFrame, além da que você definiu. Geralmente convém eliminar as colunas de que você não precisa no início de uma operação, para que você não leve dados extras durante a preparação. Nesse caso, você deve usar .select(), e não .withColumn().

Lembre-se de que uma SparkSession chamada spark já está em seu espaço de trabalho, junto com o DataFrame flights do Spark.

Este exercício faz parte do curso

Introdução ao PySpark

Ver Curso

Instruções de exercício

  • Selecione as colunas "tailnum", "origin" e "dest" de flights passando os nomes das colunas como strings. Salve o resultado como selected1.
  • Selecione as colunas "origin", "dest" e "carrier" usando a sintaxe df.colName e, em seguida, filtre o resultado usando os dois filtros já definidos para você (filterA e filterB) para manter apenas os voos de SEA a PDX. Salve o resultado como selected2.

Exercício interativo prático

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

# Select the first set of columns
selected1 = flights.select("____", "____", "____")

# Select the second set of columns
temp = flights.select(____.____, ____.____, ____.____)

# Define first filter
filterA = flights.origin == "SEA"

# Define second filter
filterB = flights.dest == "PDX"

# Filter the data, first by filterA then by filterB
selected2 = temp.filter(____).filter(____)
Editar e executar código