419 R -- 主座標分析 青木繁伸 2002/01/28 (月) 23:13
419. R -- 主座標分析 青木繁伸 2002/01/28 (月) 23:13 |
princo <- function(s) { n <- nrow(s) m <- apply(s, 2, sum)/n h <- s+sum(s)/n^2-outer(m, m, "+") res <- eigen(h) res$vectors <- res$vectors*matrix(sqrt(res$values), n, n, byrow=TRUE) colnames(res$vectors) <- names(res$values) <- paste("Axis", 1:n) rownames(res$vectors) <- paste("Object", 1:n) res$values <- res$values[res$values > 1e-5] ax <- length(res$values) res$vectors <- res$vectors[,1:ax] if (ax > 2) { plot(res$vectors[,1:2]) abline(v=0, h=0) text(res$vectors[,1], res$vectors[,2], 1:n, pos=4, offset=.2) } res } 使用例 s <- matrix(c( 0, -1, -2, -3, -1, 0, -3, -4, -2, -3, 0, -1, -3, -4, -1, 0 ), byrow=TRUE, ncol=4) princo(s) 結果 $values Axis 1 Axis 2 Axis 3 5.236068 1.000000 0.763932 $vectors Axis 1 Axis 2 Axis 3 Object 1 -0.8506508 -0.5 0.5257311 Object 2 -1.3763819 0.5 -0.3249197 Object 3 0.8506508 -0.5 -0.5257311 Object 4 1.3763819 0.5 0.3249197 このほか,対象の二次元プロット |
● 「統計学関連なんでもあり」の過去ログ--- 017 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る