Usando visualizações: distplot
Entender a distribuição da nossa variável dependente é muito importante e pode impactar o tipo de modelo ou o pré-processamento que fazemos. Uma ótima maneira de fazer isso é plotando a variável; porém, plotar não é uma função nativa do PySpark, então precisamos de alguns passos intermediários para garantir que funcione corretamente. Neste exercício, você vai visualizar a variável 'LISTPRICE' e obter mais insights sobre sua distribuição calculando a assimetria (skewness).
Os pacotes matplotlib.pyplot e seaborn já foram importados para você com os aliases plt e sns.
Este exercício faz parte do curso
Feature Engineering com PySpark
Instruções do exercício
- Amostre 50% do dataframe
dfcomsample(), garantindo que não haja reposição e definindo a semente aleatória como 42. - Converta o DataFrame do Spark para um
pandas.DataFrame()comtoPandas(). - Plote um gráfico de distribuição usando o método
distplot()doseaborn. - Importe a função
skewness()depyspark.sql.functionse calcule-a na agregação da coluna'LISTPRICE'com o métodoagg(). Lembre-se de usarcollect()no resultado para avaliar o cálculo.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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())