Aan de slagBegin gratis

Visualisaties gebruiken: distplot

Het begrijpen van de verdeling van je afhankelijke variabele is erg belangrijk en kan invloed hebben op het type model of de preprocessing die je doet. Een goede manier om dit te doen is door het te plotten. Plotten is echter geen ingebouwde functie in PySpark; we moeten een paar tussenstappen nemen om te zorgen dat het goed werkt. In deze oefening ga je de variabele 'LISTPRICE' visualiseren en meer inzicht krijgen in de verdeling door de scheefheid (skewness) te berekenen.

De pakketten matplotlib.pyplot en seaborn zijn al voor je geïmporteerd met de aliassen plt en sns.

Deze oefening maakt deel uit van de cursus

Feature Engineering met PySpark

Bekijk cursus

Oefeninstructies

  • Neem een steekproef van 50% van de dataframe df met sample(), zonder vervanging en met de random seed op 42.
  • Zet de Spark DataFrame om naar een pandas.DataFrame() met toPandas().
  • Maak een verdelingsplot met de methode distplot() van seaborn.
  • Importeer de functie skewness() uit pyspark.sql.functions en bereken deze op de aggregatie van de kolom 'LISTPRICE' met de methode agg(). Vergeet niet je resultaat te collect()en om de berekening uit te voeren.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# Select a single column and sample and convert to pandas
sample_df = df.select(['LISTPRICE']).____(____, ____, 42)
pandas_df = sample_df.____()

# Plot distribution of pandas_df and display plot
sns.____(____)
plt.show()

# Import skewness function
from pyspark.sql.functions import skewness

# Compute and print skewness of LISTPRICE
print(df.____({____: ____}).collect())
Code bewerken en uitvoeren