この質問には既に回答がありましたが、私はそれを見つけることができません。R:グループ単位でテーブルのいくつかの列から手段とSDテーブルを生成
私はテーブルをRに持っています(以下の例はtxtからコピーしました。実際のテーブルはより多くのデータとNAを持っています) カラムc、e、fの平均とsdをcolumn b
私は平均とsdをグループごとに別々に計算することができます。
mean(c[b == 1], na.rm=TRUE)
var(e[b == 2], na.rm=TRUE)
私はまた、すべての列の平均値とSDを計算し、
library(data.table)
new <- data.table(project2016)
wide <- setnames(new[, sapply(.SD, function(x) list(mean = round(mean(x), 3), sd = round(sd(x), 3))), by = b], c("b", sapply(names(new)[-1], paste0, c(".mean", ".SD"))))
wide
結果とテーブルを生成する。しかし、私は必要なcolumsのためにそれを行うことができないですし、グループによって分離することができます。事前に
Thxを、 NIMBY
"id" "a" "b" "c" "d" "e" "f" "g"
1 78 2 83 4 2.53 1.07 3
2 72 2 117 4 2.50 1.16 2
3 72 2 132 4 2.43 1.13 2
4 73 2 102 4 2.48 .81 2
5 73 2 114 4 2.33 1.13 2
6 73 2 88 43 2.13 .84 2
7 65 2 213 4 2.55 1.26 1
8 68 2 153 4 2.45 1.23 1
問題を再現できるデータを含めると便利です。私が見る限り、すべての行はここでb == 2です。何かを直接コピーしてコンソールに貼り付けることができれば最高です。 – timcdlucas