Utiliser des visualisations : distplot
Comprendre la distribution de notre variable dépendante est essentiel et peut influencer le type de modèle ou de prétraitement à appliquer. Un excellent moyen est de la visualiser ; cependant, la visualisation n’est pas une fonction intégrée de PySpark. Nous devons donc passer par quelques étapes intermédiaires pour que cela fonctionne correctement. Dans cet exercice, vous allez visualiser la variable 'LISTPRICE' et affiner votre compréhension de sa distribution en calculant l’asymétrie (skewness).
Les packages matplotlib.pyplot et seaborn ont été importés pour vous avec les alias plt et sns.
Cet exercice fait partie du cours
<cours>Feature Engineering avec PySpark</cours>Instructions de l’exercice
- Échantillonnez 50 % du DataFrame
dfavecsample()en veillant à ne pas utiliser de remise et en fixant la graine aléatoire à 42. - Convertissez le Spark DataFrame en
pandas.DataFrame()avectoPandas(). - Tracez un graphique de distribution avec la méthode
distplot()deseaborn. - Importez la fonction
skewness()depuispyspark.sql.functionset calculez-la sur l’agrégat de la colonne'LISTPRICE'avec la méthodeagg(). N’oubliez pas decollect()votre résultat pour évaluer le calcul.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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())