Sponsored Links
データの読み込みと準備
サンプルデータは、「2-3d 因子分析実例《セールスマンデータ)(2-3d.xls)」[1]を使わせていただきます。もともと因子分析の練習をするためのデータで、セールスマンに対する評価項目がたくさん掲載されていて、多分それぞれ10段階順序尺で評価されています。ここでは、自信と誠実さの2項目の点に差があるかを比較します。
R Console
[1] 松原望の総合案内サイト – 2-3d セールスマン・データの因子分析
> x <- read.table(pipe("pbpaste"), header=TRUE) # クリップボードからデータを読み込み、xに代入。ちなみにこちらはMac用のコードでWindowsは、read.table("clipboard", header=TRUE)。
> str(x) # xの構造を確認。
'data.frame': 48 obs. of 2 variables:
$ jishin : int 8 10 9 6 4 8 8 9 8 10 ...
$ seijitsu: int 8 9 9 9 9 10 8 8 8 7 ...
> quantile(x$jishin) # 自信の四分位数を確認。
0% 25% 50% 75% 100%
1 5 8 9 10
> quantile(x$seijitsu) # 誠実さの四分位数を確認。
0% 25% 50% 75% 100%
0 8 9 10 10
ウィルコクソンの符号順位検定の実行
対応のある2群の比較なので、ウィルコクソンの符号順位検定を用います(対応のない場合は、ウィルコクソンの順位和検定)。Rにはwilcox.testという関数が用意されていますが、この関数はデータにタイ(同じ値)があった時に正確な値を計算できないらしく、パッケージexactRankTestsをインストールして、正確検定を行うことができるwilcox.exactを用います。ただし、データ数が多いと正確検定はできないようです[1]。
R Console
[1] データ科学便覧 – Rによるウィルコクソンの符号順位検定
> library(exactRankTests) #パッケージexactRankTestsを読み込む。
> wilcox.exact(x$jishin, x$seijitsu, paired = TRUE) # ウィルコクソンの符号順位検定の実行。対応のあるのでpaired=TRUEを指定。
Exact Wilcoxon signed rank test
data: x$jishin and x$seijitsu
V = 217, p-value = 0.004515
alternative hypothesis: true mu is not equal to 0
効果量の計算
効果量の計算にはパッケージorddomを使います。たくさん結果が出ますが、その中のdeltaを参照します。Cliffの⊿という統計量らしいです。
R Console
> library(orddom) # パッケージorddomの読み込み。
> orddom(x$jishin, x$seijitsu, paired=TRUE) # 効果量の計算。対応のある検定の効果量を求めるので、paired=TRUEと指定。
within between combined
var1_X_pre "group 1 (x)" "group 1 (x)" "group 1 (x)"
var2_Y_post "group 2 (y)" "group 2 (y)" "group 2 (y)"
type_title "paired" "paired" "paired"
N #Y>X "28" "1334" "1362"
N #Y=X "7" "326" "333"
N #Y<X "13" "596" "609" PS X>Y "0.270833333333333" "0.264184397163121" "0.264322916666667"
PS Y>X "0.583333333333333" "0.591312056737589" "0.591145833333333"
A X>Y "0.34375" "0.336436170212766" "0.336588541666667"
A Y>X "0.65625" "0.663563829787234" "0.663411458333333"
delta "0.3125" "0.327127659574468" "0.639627659574468"
1-alpha "95" "95" "95"
CI low "0.0440754512635316" "0.100496088773753" "0.048091199407648"
CI high "0.538842543477397" "0.521487080956972" "0.898995638370245"
s delta "0.126869879451573" "0.106997925003403" "0.226287565958911"
var delta "0.0160959663120567" "0.0114485559550339" "0.0512060625076087"
z/t score "2.46315359761402" "3.05732713568103" "2.82661425458352"
H1 tails p/CI "2" "2" "2"
p "0.0174901810547552" "0.00367804234616242" "0.00688813617818695"
Cohen's d "0.468438387829239" "0.495180357670905" NA
d CI low "0.0564927026039095" "0.132714240895823" NA
d CI high "0.960014820446808" "0.91506188742121" NA
var d.i NA NA "0.228766747252536"
var dj. NA NA "0.352014967781705"
cov(di,dj) NA NA "-0.0251846893270277"
var dij NA NA "0.74848394824204"
cov(dih,dhi) NA NA "-0.0369770446657613"
cov(db,dw) NA NA "0.011830770120259"
df "47" "47" "47"
NNT "3.2" "3.05691056910569" NA
metric
var1_X_pre "group 1 (x)"
var2_Y_post "group 2 (y)"
type_title "paired"
N #Y>X "1362"
N #Y=X "333"
N #Y<X "609" PS X>Y "0.340814851416682"
PS Y>X "0.659185148583318"
A X>Y "0.336588541666667"
A Y>X "0.663411458333333"
delta "1.10416666666667"
1-alpha "95"
CI low "0.322633009077305"
CI high "1.88570032425603"
s delta "2.69151213793519"
var delta "7.24423758865248"
z/t score "2.84222796506918"
H1 tails p/CI "2"
p "0.00660735112231807"
Cohen's d "0.445771810542274"
d CI low "-0.393469713540321"
d CI high "0.406684415784957"
var d.i "5.84707446808511"
var dj. "6.42375886524823"
cov(di,dj) NA
var dij NA
cov(dih,dhi) NA
cov(db,dw) NA
df "47"
NNT "3.3348577397763"
パッケージorddomに含まれている関数の内、以下のようにコマンドを打つとグラフィカルなデータを出してくれます。これは分かりやすい。[1]
R Console
[1] 草薙の研究ログ – Cliff’s deltaや共通言語効果量(common language effect size)などを計算するRパッケージ:”orddom”
> delta_gr(x$jishin, x$seijitsu, paired=TRUE)
Sponsored Links