Visualisierungen verwenden: distplot
Die Verteilung unserer Zielvariablen zu verstehen ist sehr wichtig und kann die Wahl des Modells oder der Vorverarbeitung beeinflussen. Ein guter Weg dafür ist ein Plot. Da Plotten in PySpark nicht eingebaut ist, brauchen wir ein paar Zwischenschritte, damit alles korrekt funktioniert. In dieser Übung visualisierst du die Variable 'LISTPRICE' und gewinnst zusätzliche Einblicke in ihre Verteilung, indem du die Schiefe berechnest.
Die Pakete matplotlib.pyplot und seaborn wurden bereits mit den Aliassen plt und sns importiert.
Diese Übung ist Teil des Kurses
<Kurs>Feature Engineering mit PySpark</Kurs>Übungsanweisungen
- Ziehe eine 50-%-Stichprobe des DataFrames
dfmitsample(), ohne Zurücklegen und mit dem Zufallssamen 42. - Wandle den Spark-DataFrame mit
toPandas()in einpandas.DataFrame()um. - Erstelle einen Verteilungsplot mit der Methode
distplot()vonseaborn. - Importiere die Funktion
skewness()auspyspark.sql.functionsund berechne sie über das Aggregat der Spalte'LISTPRICE'mit der Methodeagg(). Denk daran, dein Ergebnis mitcollect()einzusammeln, um die Berechnung auszuwerten.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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())