標本相関係数の同等性の検定 Last modified: Aug 21, 2009
目的
複数の標本相関係数の母相関係数が同じかを検定し,同じである場合には一つの点推定値を与える
使用法
eq.cor(n, r)
引数
n 標本サイズのベクトル
r 標本相関係数のベクトル
ソース
インストールは,以下の 1 行をコピーし,R コンソールにペーストする
source("http://aoki2.si.gunma-u.ac.jp/R/src/eq_cor.R", encoding="euc-jp")
# 標本相関係数の同等性の検定
eq.cor <- function( n, # 標本サイズのベクトル
r) # 標本相関係数のベクトル
{
stopifnot( n > 3, # 各群の標本サイズは 3 以上でなければならない
length(n) == length(r), # n と r の要素数は同じでなければならない
floor(n) == n, # 標本サイズは整数値でなくてはならない
abs(r) <= 1) # 標本相関係数は -1 〜 1 の範囲でなければならない
method <- "標本相関係数の同等性の検定"
data.name <- paste(deparse(substitute(n)), "and", deparse(substitute(r)))
k <- length(n) # 標本の個数
v <- n-3
z <- atanh(r)
sv <- sum(v)
svz <- sum(v*z)
chi <- sum(v*z*z)-svz^2/sv # カイ二乗分布に従う検定統計量
df <- k-1
p <- pchisq(chi, df, lower.tail=FALSE) # P 値
result <- list(statistic=c("chi sq."=chi), parameter=c(df=df), p.value=p, method=method, data.name=data.name)
if (p > 0.05) { # 標本相関係数が同等と見なせる場合は,点推定値を計算する
est <- tanh(svz/sv)
result <- c(result, list(estimate=c("Estimated rho"=est)))
}
return(structure(result, class="htest"))
}
使用例
> n <- c(10, 16, 8, 29, 36) # 標本サイズのベクトル
> r <- c(0.658, 0.285, 0.569, 0.427, 0.374) # 標本相関係数のベクトル
> eq.cor(n, r)
標本相関係数の同等性の検定
data: n and r
chi sq. = 1.424, df = 4, p-value = 0.84
sample estimates:
Estimated rho # 母相関係数の点推定値
0.4179631 # 帰無仮説が採択されたときに表示される
解説ページ
直前のページへ戻る
E-mail to Shigenobu AOKI