始める無料で始める

実践編:スケーリング

動画で説明した通り、実際のデータをクラスタリングする際には、特徴量の分布が異なる場合にスケーリングが必要になることがあります。この章ではこれまで、スケーリングが不要な合成データを使用してきました。

この演習では、第1章で紹介した「実際の」データである pokemon データセットに戻って作業します。まず各特徴量の分布(平均と標準偏差)を確認し、それに応じてデータをスケーリングします。その後、完全連結法を使って階層的クラスタリングモデルを作成しましょう。

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

R による教師なし学習

コースを見る

演習の手順

データはワークスペース内の pokemon オブジェクトに格納されています。

  • colMeans() 関数を使って、pokemon の各変数の平均を確認しましょう。
  • apply() 関数と sd() 関数を使って、各変数の標準偏差を確認しましょう。変数は行列の列にあたるため、apply() の MARGIN 引数には 2 を指定するようにしてください。
  • scale() 関数を使って pokemon データをスケーリングし、結果を pokemon.scaled に格納しましょう。
  • 完全連結法を使って pokemon.scaled データの階層的クラスタリングモデルを作成しましょう。method 引数を明示的に指定し、結果を hclust.pokemon に格納してください。

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

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

# View column means


# View column standard deviations


# Scale the data


# Create hierarchical clustering model: hclust.pokemon
コードを編集して実行