2 つの相関係数が大幅に異なるかどうかをテストするにはどうすればよいですか? - GNU R では?
つまり、同じ変数 (年齢と収入など) 間の効果が 2 つの異なる母集団 (サブサンプル) で異なる場合です。
背景情報については、異なるグループ間で同じ変数の相関係数を比較する方法と、Spearman の相関係数の違いに関する有意性検定(両方とも CrossValidated) を参照してください。
2 つの相関係数が大幅に異なるかどうかをテストするにはどうすればよいですか? - GNU R では?
つまり、同じ変数 (年齢と収入など) 間の効果が 2 つの異なる母集団 (サブサンプル) で異なる場合です。
背景情報については、異なるグループ間で同じ変数の相関係数を比較する方法と、Spearman の相関係数の違いに関する有意性検定(両方とも CrossValidated) を参照してください。
複数の係数のペアを比較する場合、GNU R のすぐに使用できる関数を次に示します ( 2 つの相関係数の差の有意性とQuantitative Analysis and Politics, PDFに基づく)。
cor.diff.test = function(r1, r2, n1, n2, alternative = c("two.sided", "less", "greater")) {
Z1 = 0.5 * log( (1+r1)/(1-r1) )
Z2 = 0.5 * log( (1+r2)/(1-r2) )
diff = Z1 - Z2
SEdiff = sqrt( 1 / (n1 - 3) + 1 / (n2 - 3))
diff.Z = diff / SEdiff
if (alternative == "less") {
return(pnorm(diff.Z, lower.tail=F))
} else if (alternative == "greater") {
return(pnorm(-diff.Z, lower.tail=F))
} else if (alternative == "two.sided") {
return(2 * pnorm( abs(diff.Z), lower.tail=F))
} else {
warning(paste("Invalid alterantive", alternative), domain=NA)
return(NA)
}
}
パッケージcocorは、2 つの独立した相関係数または従属相関係数が大幅に異なるかどうかをテストする関数を提供します。利用可能なパッケージの Web インターフェイスもあります: http://comparingcorrelations.org