重相関係数     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

Made with Macintosh