階層クラスタ分析

解説

階層クラスタ分析 (Hierarchical Cluster Analysis) は、データポイント間の類似性に基づいて段階的にクラスタを形成する教師なし学習手法です。
事前にクラスタ数を指定する必要がなく、樹形図 (デンドログラム) によってクラスタの階層構造を視覚的に把握できるため、探索的データ分析において非常に有用です。

階層クラスタ分析の特徴

  • 階層構造の可視化
    • デンドログラム (樹形図) により、データの階層的な関係性を直感的に理解できます
    • クラスタの結合過程を段階的に追跡可能です
    • 任意のレベルでクラスタを切り出すことができます
  • クラスタ数の事前指定不要
    • データの自然な構造に基づいてクラスタ数を決定できます
    • シルエット法やエルボー法により最適なクラスタ数を自動決定します
    • 研究者の主観に依存しない客観的な分析が可能です
  • 多様な距離・結合方法
    • データの特性に応じて最適な手法を選択できます
    • 異なる手法の結果を比較することで、より堅牢な解釈が可能です

距離計算方法

データポイント間の非類似度を定量化する方法を選択します。

距離計算方法計算式特徴適用場面
ユークリッド距離
(推奨)
\( d = \sqrt{\sum(x_i - y_i)^2} \)最も一般的、直線距離連続変数、各次元の重要度が等しい場合
マンハッタン距離\( d = \sum|x_i - y_i| \)外れ値に頑健ノイズの多いデータ
チェビシェフ距離\( d = \max|x_i - y_i| \)最大差を重視特定次元の差が重要な場合
キャンベラ距離\( d = \sum\frac{|x_i - y_i|}{|x_i| + |y_i|} \)相対的差に基づくスケールの異なる変数
ミンコフスキー距離\( d = (\sum|x_i - y_i|^p)^{1/p} \)一般化された距離特殊な距離特性が必要な場合

結合方法 (リンケージ)

クラスタ間の距離を定義し、どのクラスタを結合するかを決定する方法です。

結合方法 特徴 形成されるクラスタ 推奨度
ウォード法 クラスタ内分散を最小化 球状、比較的均等サイズ ★★★ (推奨)
完全結合法 クラスタ間最大距離を使用 コンパクト、密度が高い ★★☆
平均結合法 全点対の平均距離を使用 バランスの取れた形状 ★★☆
単結合法 クラスタ間最小距離を使用 チェイン状、ノイズに敏感 ★☆☆
McQuitty法 重み付き平均結合 中間的特性 ★☆☆
メディアン法 メディアンベース結合 外れ値に頑健 ★☆☆
重心法 重心間距離を使用 幾何学的中心重視 ★☆☆

最適クラスタ数の決定

シルエット法 (推奨)

各データポイントがどれだけ適切なクラスタに配置されているかを評価する指標です。

シルエット値の範囲 クラスタリング品質 解釈
0.7 ~ 1.0 強固な構造 非常に適切なクラスタリング
0.5 ~ 0.7 合理的な構造 適切なクラスタリング
0.25 ~ 0.5 弱い構造 やや人工的、要検討
0.0 ~ 0.25 構造なし 不適切なクラスタリング

シルエット値 = \(\frac{b(i) - a(i)}{\max(a(i), b(i))}\)

ここで、\(a(i)\) は同一クラスタ内の平均距離、\(b(i)\) は最も近い他クラスタとの平均距離です。

エルボー法

クラスタ内平方和 (WSS) の変化率からクラスタ数を決定します。 WSS の減少率が急激に変化する「肘」の部分を最適なクラスタ数とします。

手動指定

研究目的や先行研究に基づいて、事前にクラスタ数を指定することも可能です。

データの前処理

データ要件

項目 要件 備考
変数の型 連続変数のみ カテゴリカル変数は事前に数値化が必要
欠損値 自動除外 完全なケースのみ使用
標準化 自動実行 平均0、標準偏差1に変換
サンプルサイズ 変数数の5-10倍以上推奨 統計的安定性のため

変数選択の注意点

* 多重共線性: 高い相関を持つ変数は事前に除外を検討 * 外れ値: 結果に大きく影響するため、事前の確認が重要 * スケールの違い: 自動標準化により調整されますが、変数の意味を考慮

可視化機能

デンドログラム設定

設定項目 オプション 用途
向き 縦向き / 横向き 長いラベル名には横向きが適している
ラベルサイズ 0.6 / 0.8 / 1.0 / 1.2 データ数に応じて調整
クラスタ色分け 最適クラスタ数に基づく 結果の直感的理解

その他の可視化

  • 散布図: 最初の2変数でクラスタ結果を色分け表示
  • シルエット分析図: 各データポイントのシルエット値を可視化
  • 最適クラスタ数分析図: シルエット値またはWSS の変化を表示

適用分野と活用例

分野 活用例 具体的応用
マーケティング 顧客セグメンテーション 購買行動パターンの分類
生物学・医学 患者分類、遺伝子解析 病型分類、発現パターン解析
心理学 パーソナリティ分析 性格特性による分類
社会科学 社会調査データ分析 意識調査の回答パターン分類
工学 品質管理、パターン認識 製品特性による分類

結果の解釈と後続分析

クラスタの特徴把握

各クラスタの統計的特徴を以下の表形式で確認できます:

クラスタ サンプル数 変数1平均 変数2平均 特徴
クラスタ1 n1 μ11 μ12 高値群
クラスタ2 n2 μ21 μ22 中値群
クラスタ3 n3 μ31 μ32 低値群

推奨される後続分析

分析手法 目的 備考
群間検定 クラスタ間の有意差検証 各変数でクラスタ間比較
分割表 カテゴリカル変数との関連 クラスタと既知分類の関係
多変量解析 予測モデル構築 クラスタを説明変数として使用

注意事項

統計的考慮事項

項目 注意点 対策
再現性 決定論的手法のため同一結果 データ前処理の一貫性が重要
因果関係 探索的分析、因果関係は示さない 解釈時の注意が必要
手法依存性 異なる手法で異なる結果 複数手法での検証を推奨
統計的有意性 p値の概念とは異なる 実質的意味を重視

データ品質の要件

  • サンプルサイズ: 変数数の5-10倍以上のサンプルが推奨
  • 変数の独立性: 高い相関を持つ変数は事前除外を検討
  • 外れ値の処理: 結果に大きく影響するため事前確認が重要
  • 欠損値: 完全ケース分析のためサンプル数減少に注意

データ

設定

クラスタリング詳細設定
距離の計算方法
結合方法
最適クラスタ数の決定
最適クラスタ数探索範囲
可視化設定
デンドログラム
デンドログラムの向き
ラベルの文字サイズ
クラスタ散布図
シルエット分析
最適クラスタ数分析

結果

クラスタ分析結果をデータテーブルの新しい列に追加しました。

  • {{ nNRows.length }}個のデータが{{ clusterResult.optimalK }}個のクラスタに分類されました。
  • 上のボタンを押すと、"{{ clusterColumnName }}" カラムにクラスタ番号を格納します。
  • その際、現在の "{{ clusterColumnName }}" カラムの内容は上書きされます。
  • 各行に割り当てられたクラスタ番号 (1, 2, 3...) が表示されます。
  • 実行後は、必要に応じてファイルにダウンロードして保存してください。
  • このクラスタ結果を用いて、さらなる統計分析 (クラスタ別の記述統計、分散分析など) を行うことができます。