重相関係数 Last modified: Jun 29, 2004
目的
重相関係数を計算する
使用法
multiple.cor(x)
引数
x データ行列(行がケース,列が変数)
ソース
インストールは,以下の 1 行をコピーし,R コンソールにペーストする
source("http://aoki2.si.gunma-u.ac.jp/R/src/multiple_cor.R", encoding="euc-jp")
# 重相関係数を計算する
multiple.cor <- function(x) # データ行列
{
x <- subset(x, complete.cases(x)) # 欠損値を持つケースを除く
r <- sqrt(1-1/diag(solve(cor(x)))) # その変数とその変数以外の変数の重相関係数を,変数ごとに計算する
var.names <- colnames(x)
names(r) <- if (is.null(var.names)) paste("Var", 1:ncol(x)) else var.names
return(r)
}
使用例
x <- matrix(c( # 5ケース,4変数のデータ行列例(ファイルから読んでも良い)
1, 5, 6, 4,
2, 14, 5, 3,
3, 3, 4, 2,
4, 2, 6, 6,
3, 4, 3, 5
), ncol=4, byrow=TRUE)
multiple.cor(x)
出力結果例
Var 1 Var 2 Var 3 Var 4
0.6184644 0.5335658 0.4433471 0.5780364
解説ページ
直前のページへ戻る
E-mail to Shigenobu AOKI