在一系列列上使用replicate(),并将统计数据应用于结果



我有一个频率的交叉选项,即对于A列A01,有6485个计数为13个CAG,35个计数14个CAG等。我已经设法将其转换为A列A01的长数据,然后可以使用该列来计算均值和SD。但是,我有N列,我不确定如何将此功能应用于所有列。

data <- data.frame(CAG = c(13, 14, 15), A01 = c(6485,35,132), A02 = c(0,42,56))
cag = rep(data$CAG, data$A01)
mean <- mean(cag)
stdef <- sd(cag)
L = list()
for (i in 1:ncol(data)){
  tmp = rep(data[i, 1], data[i, 2])
  mean = mean(tmp)
  stdef = sd(tmp)
  L[[i]] = cbind(mean, stdef)
}
Mx = do.call(rbind, L)
Mx

最新更新