始める無料で始める

第1主成分

データの第1主成分とは、データが最も大きく変動する方向のことです。この演習では、PCAを使って穀物サンプルの長さと幅の測定値から第1主成分を求め、それを散布図上に矢印として表示しましょう。

配列grainsには、穀物サンプルの長さと幅が格納されています。PyPlot(plt)とPCAはすでにインポート済みです。

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

Pythonで学ぶ教師なし学習

コースを見る

演習の手順

  • 穀物の測定値の散布図を作成します。これはすでに完了しています。
  • modelという名前のPCAインスタンスを作成します。
  • モデルをgrainsデータにフィットさせてください。
  • model.mean_属性を使って、データの平均座標を取り出してください。
  • model.components_[0,:]属性を使って、第1主成分を取得してください。
  • plt.arrow()関数を使って、第1主成分を散布図上に矢印として表示してください。最初の2つの引数としてmean[0]mean[1]を指定する必要があります。

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

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

# Make a scatter plot of the untransformed points
plt.scatter(grains[:,0], grains[:,1])

# Create a PCA instance: model
model = ____

# Fit model to points
____

# Get the mean of the grain samples: mean
mean = ____

# Get the first principal component: first_pc
first_pc = ____

# Plot first_pc as an arrow, starting at mean
plt.arrow(____, ____, first_pc[0], first_pc[1], color='red', width=0.01)

# Keep axes on same scale
plt.axis('equal')
plt.show()
コードを編集して実行