マハラノビス距離に基づいたクラスター分析を実行する方法
[OS] ALL
[リリース] ALL
[キーワード] STAT, CLUSTER, PRICOMP, MAHALANOBIS
[質問]
CLUSTERプロシジャを用いて、階層型のクラスター分析を行なっています。 [回答]
座標データからなるデータセットをそのまま分析に用いた場合には、原則としてユークリッド距離に基づいて分析が行なわれます。マハラノビス距離に基づいたクラスター分析を実行する場合には、座標データに対して最初にPRINCOMPプロシジャを用いて主成分得点を計算し、その主成分得点を分析変数としてCLUSTERプロシジャを用いることにより、本質的に同じ分析を実行できます。なお、PRINCOMPプロシジャでは、あらかじめSTDオプションを指定しておく必要があります。 /*サンプルデータの作成*/ data test; do id=1 to 100; x=rannor(12345); y=rannor(12345); z=rannor(12345); output; end; run; /*PRINCOMPプロシジャ*/ proc princomp data=test std out=out noprint; var x y z; run; proc cluster data=out method=ward outtree=tree; var prin: ; /*変数名がprinで始まるもののみを分析変数として用いる*/ id id; run; proc tree data=tree; run; |