合同会社DILIGENCE's job postings
相関行列の分析をしてデータの見通しを立てる-Hmisc,PerformanceAnalytics パッケージを使用- (S. Kubota)
相関行列の見通しを立てるのに,corrplotを用いるのもいいが,他の方法も記述しておく.
まずはデータ,以下のようなデータをエクセルから読み込んだ(corrplotのメモと同じデータ).
dat<-read .delim=("clipboard")
dat
EMG1 EMG2 EMG3 EMG4 time force fatigue comfort
1 0.020 0.007 0.015 0.020 1.70 361.132 68.6 60.6
2 0.039 0.008 0.010 0.012 1.36 293.362 65.0 48.2
3 0.079 0.007 0.015 0.017 2.48 349.753 97.4 28.0
4 0.041 0.007 0.012 0.007 1.53 251.173 80.4 46.0
5 0.093 0.015 0.014 0.020 2.04 207.457 85.6 30.6
中略
30 0.029 0.009 0.009 0.009 0.96 242.083 56.4 83.4
31 0.035 0.007 0.009 0.012 1.24 273.743 21.6 82.0
32 0.043 0.007 0.009 0.011 1.60 268.695 23.8 77.2
33 0.092 0.007 0.012 0.018 1.05 274.317 27.0 93.4
34 0.051 0.007 0.008 0.014 1.21 243.626 49.8 86.0
35 0.051 0.007 0.008 0.014 0.84 241.260 21.4 79.0
36 0.051 0.007 0.008 0.014 1.10 292.484 20.6 80.2
次に,Hmiscパッケージを読み込んで,相関行列の分析結果を出力してみる.
library(Hmisc)
cordat<-rcorr as.matrix="" dat="" rcorr--="" type="pearson">
typeで"pearson"もしくは"spearman"を選択する.
結果は以下の通り.
cordat
EMG1 EMG2 EMG3 EMG4 time force fatigue comfort
EMG1 1.00 0.07 0.33 0.33 0.08 -0.32 -0.05 -0.23
EMG2 0.07 1.00 0.13 0.28 0.52 0.23 0.39 -0.47
EMG3 0.33 0.13 1.00 0.20 0.18 0.09 0.44 -0.41
EMG4 0.33 0.28 0.20 1.00 0.43 0.20 0.24 -0.43
time 0.08 0.52 0.18 0.43 1.00 0.16 0.57 -0.63
force -0.32 0.23 0.09 0.20 0.16 1.00 0.35 -0.18
fatigue -0.05 0.39 0.44 0.24 0.57 0.35 1.00 -0.66
comfort -0.23 -0.47 -0.41 -0.43 -0.63 -0.18 -0.66 1.00
n= 36
P
EMG1 EMG2 EMG3 EMG4 time force fatigue comfort
EMG1 0.6653 0.0496 0.0521 0.6355 0.0549 0.7595 0.1689
EMG2 0.6653 0.4435 0.0933 0.0012 0.1691 0.0178 0.0035
EMG3 0.0496 0.4435 0.2482 0.2901 0.6104 0.0079 0.0127
EMG4 0.0521 0.0933 0.2482 0.0085 0.2507 0.1543 0.0088
time 0.6355 0.0012 0.2901 0.0085 0.3502 0.0003 0.0000
force 0.0549 0.1691 0.6104 0.2507 0.3502 0.0351 0.3024
fatigue 0.7595 0.0178 0.0079 0.1543 0.0003 0.0351 0.0000
comfort 0.1689 0.0035 0.0127 0.0088 0.0000 0.3024 0.0000
上が相関係数,下が無相関検定結果でp値.
これだけでも,そこそこ見やすいが,PerformanceAnalyticsパッケージを用いて,さらに視覚的に表してみる.
library(PerformanceAnalytics)
chart.Correlation(dat, histogram=TRUE, pch=19)
pchで散布図のドットの形を指定できる.今回はhistogramも表示してみた.
結果の図は下記の通り.
なお,p値はそれぞれ,0, 0.001, 0.01, 0.05, 0.1, 1未満が“”, “ ”, “ ”, “.”, " “で表されている.