過去の投稿に画像リンク切れ多数ありご迷惑おかけしています.

パラレルプロットのすすめ

JMPではじめるデータサイエンス

JMPにはいろいろと好きな機能があるんだけど,「パラレルプロット」はそのうちの一つ.多次元データの可視化のためのグラフだから,実験計画のデータやモデルの可視化によく使います.とはいっても,JMP固有のグラフっていうわけじゃなくて,Pythonのmatplotlibを使っても描けます.だけど,その前にpandasでデータ構造を並行座標系にしとく必要があるので手軽じゃない.それに,このグラフ単独で何かを結論することは少ないから,JMPの要素機能特にダイナミックリンクととても相性がいいと感じてる.

数バージョン前から「グラフビルダー」にも搭載されたので,「段組み」とかを使うことでますます使い勝手が良くなってます.平面的なパラレルプロットが立体的に浮かび上がってくる感覚.因みに,グラフメニューの「パラレルプロット」のほうから作成すると,設定画面から「スケールの統一」と「0で中心化」というオプションが選べるけど,グラフビルダーから作成するとこのオプションは選べないので,この点には注意です.新規計算式列をつくればいいんだけど,同じ性質の変数を比較する場合はグラフメニューから単独で描いたほうが早いです.

「多変量の相関」の赤三角メニューからも「パラレルプロット」が描けて,『JMPではじめるデータサイエンス』でも使ってるけど,一つ補足したいことがあります.「ローカルデータフィルタ」をかけると,軸がオートスケールされるので注意が必要です.p174で,「ローカルデータフィルタ」を実行するようにJMPくんが言ってるけど,このように層別化して,全体と比較したいときなんかはグローバル「データフィルター」を使ってください.因みに「グラフビルダー」で作成する「パラレルプロット」も同じ仕様のようです.

多変量解析なんかでは,オートスケールされてた方が都合がいいからだと思うけど,この点は赤三角にオプションとして備わってれば嬉しい.リクエストしてみようかな.「自動再計算」のチェックを外そうと思っても,チェックが入ったままでグレーアウトしてるので,何かソフト上の制約かも知れない.JMP14でチェックしたときは問題なかったので,JMP15で変更が入ったのかも.詳しい仕様がどうなっているのか調べてみて,必要あれば正式に訂正します.とりあえず,JMP15をお使いの場合,練習19で「パラレルプロット」を描くときは,グラフメニューの「パラレルプロット」を呼ぶか,グローバル「データフィルター」を使えば,書籍のとおり実習できます.

この「パラレルプロット」ですけど,他にもいろいろ使い道があるので紹介します.一つは外れ値の検出です.この場合は,できるだけ層別化しておくこと.サポートファイルの「高等学校体力測定データ.jmp」を「学年」と「性別」で層別化して「パラレルプロット」段組みしてみます.

ご覧のように,全体から外れているサンプルを見つけやすくなるんです.適当に外れ値候補のサンプルを選択して色を変えてみました.多変量としての外れ具合が目視で判断できます.

もう一つは変数間の多重共線性の検出です.この場合,変数は二つにして「パラレルプロット」の並行性を見ます.サンプルが一直線上に載れば,パラレルプロットは並行線で表されるのがお判りでしょうか.この図では,比較のために二つの変数間の関係を「パラレルプロット」と「散布図」とで描いてます.

この図だと,「粉砕時間」のほうが,「噴霧量」よりも「溶出」との関係系が強いのがいて取れます.多変量解析の場合,こういう微妙な多重共線性がほとんどです.この並行性に着目して層別化すると,有意義な情報が得られることがあるんです.早い段階でチェックしておくことは,とても有意義.

「パラレルプロット」の欠点は,グラフ上で隣り合ったに変数との関係性しかみえないことだけど,ここで役に立つのがJMPの「列スイッチャー」です.このグラフでは「粉砕時間」を次々と他の変数に切り替えてみてます.「パラレルプロット」はJMPで使って初めてその威力が実感できるね.まさにJMPに向いているグラフなんです.

と,ここまで書いて思い出した.今週は「実験計画のすすめ」を書くんだったっけ.何か「すすめ」というのが引っかかってたんですよね.それは今度にまわしときましょう.

それではまた.

統計的問題解決研究所

コメント