Aan de slagGa gratis aan de slag

SQL-query’s voor het filteren van een tabel

In de vorige oefening heb je een eenvoudige SQL-query uitgevoerd op een DataFrame. Je kunt ook meer geavanceerde query’s schrijven om precies het resultaat te krijgen dat je wilt en dit gebruiken voor vervolganalyses zoals datavisualisatie en Machine Learning. In deze oefening gebruiken we de tijdelijke tabel people die je eerder hebt gemaakt, filteren we de rijen waar "sex" mannelijk en vrouwelijk is en maken we twee DataFrames.

Let op: de "oplossing" is hoofdlettergevoelig voor de SQL-commando’s (bijvoorbeeld, hij accepteert alleen FROM en niet from). De "oplossing" accepteert alleen "==" en niet "=".

Onthoud: je hebt al een SparkSession spark en een tijdelijke tabel people beschikbaar in je werkruimte.

Deze oefening maakt deel uit van de cursus

Big Data Fundamentals met PySpark

Cursus bekijken

Oefeninstructies

  • Filter de tabel people om alle rijen te selecteren waar sex female is, en sla deze op in het DataFrame people_female_df.
  • Filter de tabel people om alle rijen te selecteren waar sex male is, en sla deze op in het DataFrame people_male_df.
  • Tel het aantal rijen in zowel de DataFrames people_female als people_male.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Filter the people table to select female sex 
people_female_df = spark.____('SELECT * FROM ____ WHERE sex=="____"')

# Filter the people table DataFrame to select male sex
people_male_df = spark.____('SELECT * ____ people ____ ____=="____"')

# Count the number of rows in both people_df_female and people_male_df DataFrames
print("There are {} rows in the people_female_df and {} rows in the people_male_df DataFrames".format(people_female_df.____(), people_male_df.____()))
Code bewerken en uitvoeren