始める無料で始める

可視化を使う:distplot

目的変数の分布を把握することはとても重要で、選ぶモデルや前処理にも影響します。手軽な方法はプロットで確認することですが、PySparkには標準のプロット機能がないため、正しく動かすにはいくつかの中間ステップが必要です。この演習では 'LISTPRICE' 変数を可視化し、さらに歪度(skewness)を計算して分布についての理解を深めます。

matplotlib.pyplotseaborn はそれぞれ pltsns のエイリアスでインポート済みです。

この演習はコースの一部です

PySparkで学ぶ特徴量エンジニアリング

コースを見る

演習の手順

  • 置換なし、乱数シードを 42 に設定して、sample() を用いてデータフレーム df を 50% 抽出します。
  • Spark DataFrame を toPandas()pandas.DataFrame() に変換します。
  • seaborndistplot() メソッドで分布図を描画します。
  • pyspark.sql.functions から skewness() をインポートし、agg() メソッドで 'LISTPRICE' 列の集約に対して計算します。計算結果を評価するために collect() するのを忘れないでください。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# 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())
コードを編集して実行