- 遊び
- 2x2分割表がある
- カイ二乗統計量を計算することが多い
- 群内分散と群間分散とも計算してその比をとったりしてみよう
n.iter <- 1000 chis <- ss <- ss2 <- rep(0,n.iter) v <- sample(100:500,4) m <- matrix(v,2,2) a <- apply(m,1,sum) b <- apply(m,2,sum) m.e <- matrix(c(a[1]*b[1],a[1]*b[2],a[2]*b[1],a[2]*b[2]),2,2)/sum(v) N <- 100 rs <- rep(0,n.iter) for(i in 1:n.iter){ r <- runif(1,-1,1)*100 rs[i] <- r tmp.m <- m + matrix(c(r,-r,-r,r),2,2) chis[i] <- sum((tmp.m-m.e)^2/m.e) V.whole <- 2*(tmp.m[1,1]*tmp.m[1,2]+tmp.m[1,1]*tmp.m[2,2]+tmp.m[1,2]*tmp.m[2,1]+tmp.m[2,1]*tmp.m[2,2]) V.1 <- 2*tmp.m[1,1]*tmp.m[1,2] V.2 <- 2*tmp.m[2,1]*tmp.m[2,2] U.1 <- 2*tmp.m[1,1]*tmp.m[2.1] U.2 <- 2*tmp.m[1,2]*tmp.m[2,2] ss[i] <- (V.whole-V.1-V.2)/V.whole ss2[i] <- (V.whole-U.1-U.2)/V.whole } plot(as.data.frame(cbind(chis,ss,ss2))) plot(chis,ss) plot(rs,chis/ss)