【发布时间】:2017-06-24 02:04:05
【问题描述】:
我有一个频率交叉表,我想使用 rep() 和 apply() 函数为每个样本(A01、A02 等)制作一长列数据,我可以将其用于均值和标准差统计数据。 A01、A02 等列中的数字是 CAG 的频率计数,例如6485 个 13 CAG 计数。
我已设法编写函数以提供正确的结果,但格式似乎不可索引,例如使用sumstats$A01 给出NULL。理想情况下,我还希望输出表中的行和列倒置,所以列是均值、标准差等。
data <- data.frame(CAG = c(13, 14, 15), A01 = c(6485,35,132), A02 = c(0,42,56))
sumstats <- sapply(data[, 2:ncol(data)], function(x) {
data_e <- rep(data$CAG, x)
list(
mean = mean(data_e),
median = median(data_e),
sd = sd(data_e)
)
})
#Output:
#sumstats$A01
#NULL
【问题讨论】:
标签: r function matrix apply sapply