我想计算大数据帧每列的曲线下面积,其中每列的积分限制不同,并存储在不同的数据帧(df2)中。特别是,df2表示积分的起点和终点的位置。
n = 1:100
s = 52:151
b = 68:167
df = data.frame(n, s, b)
start = c(45,50,38)
end = c(68,70,72)
df2 = data.frame(start, end)
我使用了来自MESS库的函数auc,以便从一列计算auc,但我已经堆叠为所有人做了
任何人都可以提供一些建议,告诉我如何做到这一点?还有另一个更适合我的问题的方案吗?
提前谢谢
答案 0 :(得分:0)
矢量中的结果:
x <- 1:100 #I guess
setNames(
sapply(seq_len(ncol(df)),
function(i) auc(x, df[[i]], df2$start[i], df2$end[i]) ),
names(df)
)
或作为数据框:
df3 <- as.data.frame( setNames(
lapply(seq_len(ncol(df)),
function(i) auc(x, df[[i]], df2$start[i], df2$end[i]) ),
names(df)
))