★ クロス集計表の縦横%をRでスマートに計算する方法は ★

 173 クロス集計表の縦横%をRでスマートに計算する方法は  青木繁伸  2002/10/15 (火) 19:04


173. クロス集計表の縦横%をRでスマートに計算する方法は  青木繁伸  2002/10/15 (火) 19:04
クロス集計表の縦横%をRでスマートに計算する方法はどんなのがあるでしょうか。
以下のようなのを書いたのですが,かなり不細工
percentage <- function(a, row.percent=TRUE)
{
    if (row.percent == FALSE) {
        a <- t(a)
    }
    total <- apply(a, 1, sum)
    ans <- round(a/total*1000)/10
    a <- cbind(a, total)
    total <- apply(a, 2, sum)
    a <- rbind(a, total)
    if (row.percent == FALSE) {
        a <- t(a)
        ans<- t(ans)
    }
    list(a=a, ans=ans)
}

a <- matrix(c(3, 0, 3, 9, 12, 11, 22, 20, 11, 9, 14, 4), byrow=TRUE, nc=3)

percentage(a, row.percent=TRUE)
percentage(a, row.percent=FALSE)


● 「統計学関連なんでもあり」の過去ログ--- 021 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る