ケンドールの順位相関係数行列     Last modified: Feb 09, 2005

目的

ケンドールの順位相関係数行列を計算する。

使用法

3変数以上のケンドールの順位相関係数行列を求める
kendall(data.matrix)

2変数間のケンドールの順位相関係数を求める
kendall2(x, y)

引数

data.matrix データ行列(列が変数)
x, y         データベクトル

ソース

インストールは,以下の 1 行をコピーし,R コンソールにペーストする
source("http://aoki2.si.gunma-u.ac.jp/R/src/kendall.R", encoding="euc-jp")

kendall2 <- function(x, y)           # 2変数間のケンドールの順位相関係数
{
        cor(cbind(x, y), use="complete.obs", method="kendall")[1, 2]
}

kendall <- function(dat)             # ケンドールの順位相関係数行列
{

        cor(dat, use="complete.obs", method="kendall")
}


使用例

d <- matrix(c(1, 3, 5, 2, 2, 4, 3, 1, 23, 2, 4, 4, 4, 3, 3, 5, 2, 1, 3, 5, 3), byrow=TRUE, ncol=3)	# 7行3列のデータ行列
kendall(d)

出力結果例

> d <- matrix(c(1, 3, 5, 2, 2, 4, 3, 1, 23, 2, 4, 4, 4, 3, 3, 5, 2, 1, 3, 5, 3), byrow=TRUE, ncol=3)

> d
     [,1] [,2] [,3]	# このようなデータ
[1,]    1    3    5
[2,]    2    2    4
[3,]    3    1   23
[4,]    2    4    4
[5,]    4    3    3
[6,]    5    2    1
[7,]    3    5    3

> kendall(d)
           [,1]       [,2]       [,3]
[1,]  1.0000000 -0.1578947 -0.6315789
[2,] -0.1578947  1.0000000 -0.2631579
[3,] -0.6315789 -0.2631579  1.0000000

> kendall2(d[,1], d[,2])
[1] -0.1578947

> cor(d, method="kendall")	# cor 関数を使う場合
           [,1]       [,2]       [,3]
[1,]  1.0000000 -0.1578947 -0.6315789
[2,] -0.1578947  1.0000000 -0.2631579
[3,] -0.6315789 -0.2631579  1.0000000

・ 解説ページ


・ 直前のページへ戻る  ・ E-mail to Shigenobu AOKI

Made with Macintosh