Usare le visualizzazioni: distplot
Capire la distribuzione della variabile dipendente è molto importante e può influenzare il tipo di modello o di preprocessing che esegui. Un ottimo modo per farlo è rappresentarla graficamente; tuttavia, il plotting non è una funzione integrata in PySpark, quindi dobbiamo fare alcuni passaggi intermedi per assicurarci che funzioni correttamente. In questo esercizio visualizzerai la variabile 'LISTPRICE' e otterrai ulteriori informazioni sulla sua distribuzione calcolandone la skewness (asimmetria).
I pacchetti matplotlib.pyplot e seaborn sono già stati importati con gli alias plt e sns.
Questo esercizio fa parte del corso
Feature Engineering con PySpark
Istruzioni dell'esercizio
- Estrai un campione pari al 50% del dataframe
dfconsample(), assicurandoti di non usare la reintegrazione (replacement=False) e impostando il seme casuale a 42. - Converte il DataFrame di Spark in un
pandas.DataFrame()contoPandas(). - Traccia un grafico della distribuzione usando il metodo
distplot()diseaborn. - Importa la funzione
skewness()dapyspark.sql.functionse calcolala come aggregazione sulla colonna'LISTPRICE'con il metodoagg(). Ricorda di usarecollect()sul risultato per eseguire la valutazione del calcolo.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# 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())