我正在嘗試獲取數據框中每個子集的平均值,並將該信息合併到列中。適用的可變版本?
我可以用lapply做到這一點,但我不能讓它「堅持」。有副作用的應用功能家族的變種嗎? plyr庫中的任何東西都可以。
data <- data.frame(
A = sample(LETTERS[1:3], 20, replace=TRUE),
B = runif(20),
C = LETTERS[1:20])
# split by A
dataByA <- split(data, factor(data$A))
# get average of B per set
lapply(dataByA, function(df) {df$Bmean <- mean(df$B)}) # does nothing!
# remerge subsets
data <- rbind.fill(dataByA)
感謝
完美。我不熟悉轉換函數。謝謝! – sharoz 2013-04-06 00:45:54
很高興它的工作。 – Metrics 2013-04-06 00:49:47