Rによる統計解析と効果量算出法
JAMOVIを使った方が楽かも?
[リンク]
MacとWinでコマンドが多少異なることがある。
各ペア間の効果量:Cohen's d。算出方法はt検定参照
エクセルでのテーブル様式
group | value | (この行の名前を変えては駄目) |
X | 数値 |
X | 数値 |
Y | 数値 |
Y | 数値 |
Z | 数値 |
Z | 数値 |
1. Rに
install.packages("SimComp", dependencies = TRUE)
とコピペしリターン。インストール済みなら不要。
2. Rに
library(SimComp)
とコピペしリターン。
3. Rに
dat <- read.table(pipe("pbpaste"),header=T)
Winの場合は dat <- read.table("clipboard", header=T)
とコピペ。リターンはまだ押さない。
4. テーブルを1行目からコピーして、Rでリターン
5. Rに
dat$group <- factor(dat$group, levels = c("X","Y","Z"))
とコピペし、X,Y,Zを群名にそれぞれ変更してリターン
6. Rに
levels(dat$group)
とコピペしリターン。対照群の順番を確認。
7. Rに
SimTestDiff(data = dat, grp = "group", resp = "value", type = "Dunnet", base = 1, covar.equal = T)
とコピペ。base = 1の数字を対照群の順番に変更。そしてリターン。
2項目(データがXとY)が多群、なら使えるかも。それでも、もしくはもっと多くの項目の多群では、普通に(上で)かけてボンフェローニなり、Hochbergの方法も大変ではないのでHochbergなり、手でやればよいだけかも。
エクセルでのテーブル様式
| Group1 | Group2 | Group3 | ... |
X | 数値 | 数値 | 数値 | |
Y | 数値 | 数値 | 数値 | |
Z | 数値 | 数値 | 数値 | |
1. Rに
install.packages("RVAideMemoire")
とコピペしリターン。インストール済みなら不要。
2. Rに
library(RVAideMemoire)
とコピペ、リターン。
2. Rに
tab <- matrix(c(*,*,*,*,*,*), nrow=**)
とコピペ。データの数値(*)を入力し(解析するテーブルを左から縦に読んでいく)と、テーブルの行数(**)を入力し、リターン。
2. Rに
dimnames(tab) <- list(c("X","Y","Z"), c("Group1","Group2","Group3"))
とコピペ。行と列に応じて"X","Y","Z"と"Group1","Group2","Group3"を整える。
3. Rに
fisher.multcomp(tab, p.method="none")
or
fisher.multcomp(tab, p.method="holm")
or
fisher.multcomp(tab, p.method="hochberg")
と、補正方法(有意差の出やすさ hochberg > holm)に応じてコピペし、リターン。
多数の測定項目で探す場合はテーブルを作った方が楽かも。
項目数と手間との兼ね合いで。けれど一番楽なのは、外れ値とされたデータを
大きい順や小さい順にデータをみて、自分で見つけることかも。
1項目での検索
エクセルでのテーブル様式
1.Rに
dat <- scan(pipe("pbpaste"))
Winの場合は dat <- scan("clipboard")
とコピペ。リターンはまだ押さない。
2. テーブルの数値部分だけをコピーしリターン。
3. Rに
boxplot(dat)
とコピペしリターン。箱ひげ図の上や下に丸があれば外れ値。
外れ値の分布パターンで以下の3つ(4-1, 4-2, 4-3)のどれかを行う。
4-1. 外れ値が上にある場合は、Rに
high <- quantile(dat, 3/4) + IQR(dat) * 1.5
とコピペしリターン。続いて
dat[dat > high]
とコピペしリターン。外れ値が表示される。
4-2. 外れ値が下にある場合は、Rに
low <- quantile(dat, 1/4) - IQR(dat) * 1.5
とコピペしリターン。続いて
dat[dat < low]
とコピペしリターン。外れ値が表示される。
4-3. 外れ値が両方にある場合は、Rに
high <- quantile(dat, 3/4) + IQR(dat) * 1.5
とコピペしリターン。続いて
low <- quantile(dat, 1/4) - IQR(dat) * 1.5
とコピペしリターン。そして
dat[(dat < low) | (dat >high)]
とコピペしリターン。外れ値が表示される
多項目での検索
エクセルでのテーブル様式
ID | 項目1 | 項目2 | ... |
ID1 | 数値 | 数値 | ... |
ID2 | 数値 | 数値 | ... |
ID3 | 数値 | 数値 | ... |
ID4 | 数値 | 数値 | ... |
1.Rに
dat <- read.table(pipe("pbpaste"), header=T)
Winの場合は dat <- read.table("clipboard", header=T)
とコピペ。リターンはまだ押さない。
2. テーブルを1行目からコピーして、Rでリターン。
3. Rに
boxplot(dat)
とコピペしリターン。箱ひげ図の上や下に丸があれば外れ値。
外れ値の分布パターンで以下の3つ(4-1, 4-2, 4-3)のどれかを行う。
4-1. ある項目で外れ値が上にある場合は、Rに
high <- quantile(dat$項目, 3/4) + IQR(dat$項目) * 1.5
とコピペし、上記の"項目"を調べたい項目名に変更してリターン。続いて
dat[dat$項目 > high, ]
とコピペし、上記の"項目"を調べたい項目名に変更してリターン。外れ値が表示される。
4-2. ある項目で外れ値が下にある場合は、Rに
low <- quantile(dat$項目, 1/4) - IQR(dat$項目) * 1.5
とコピペし、上記の"項目"を調べたい項目名に変更してリターン。続いて
dat[dat$項目 < low, ]
とコピペし、上記の"項目"を調べたい項目名に変更してリターン。外れ値が表示される。
4-3. ある外れ値が両方にある場合は、Rに
high <- quantile(dat$項目, 3/4) + IQR(dat$項目) * 1.5
とコピペし、上記の"項目"を調べたい項目名に変更してリターン。続いて
low <- quantile(dat$項目, 1/4) - IQR(dat$項目) * 1.5
とコピペし、上記の"項目"を調べたい項目名に変更してリターン。そして
dat[(dat$項目 < low) | (dat$項目 > high), ]
とコピペし、上記の"項目"を調べたい項目名に変更してリターン。外れ値が表示される。
since 2001.3.1
