目的 コクランのQ検定を行う 使用法 Cochran.Q.test(x) 引数 x データ行列(行がケース,列が変数) ソース インストールは,以下の 1 行をコピーし,R コンソールにペーストする source("http://aoki2.si.gunma-u.ac.jp/R/src/Cochran_Q_test.R", encoding="euc-jp") # コクランの Q 検定 Cochran.Q.test <- function(x) # データ行列 { data.name <- deparse(substitute(x)) method <- "コクランの Q 検定" x <- subset(x, complete.cases(x)) # 欠損値を持つケースを除く k <- ncol(x) # 変数の個数(列数) g <- colSums(x) # 列和 l <- rowSums(x) # 行和 Q <- ((k-1)*(k*sum(g^2)-sum(g)^2))/(k*sum(l)-sum(l^2)) # 検定統計量 df <- k-1 # 自由度 p <- pchisq(Q, df, lower.tail=FALSE) # P 値 names(Q) <- "X-squared" names(df) <- "df" return(structure(list(statistic=Q, parameter=df, p.value=p, method=method, data.name=data.name), class="htest")) } 使用例 x <- matrix(c( # 10ケース,3変数のデータ行列例(ファイルから読んでも良い) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), byrow=TRUE, ncol=3) Cochran.Q.test(x) 出力結果例 コクランの Q 検定 data: x X-squared = 6.5, df = 2, p-value = 0.03877 解説ページ