【发布时间】:2014-06-21 14:36:51
【问题描述】:
我有一个包含一列 (depth, z) 的数据框,我试图在其中找到基于常规深度值的累积深度值的差异。我想创建一个包含 3 列的新数据框:标准值、其各自的累积深度值以及具有连续累积深度之间差异的第三列,例如:
z1<-c(1.2, 1.5, 0.8, 0.7, 1.6, 1.9, 1.1, 0.6, 1.3, 1.0)
z<-data.frame(z1)
crit1<-c(0.5,1,1.5,2)
# A loop comes to mind,
for(i in c(0.5,1,1.5,2)){
print( sum(subset(z1,z1<=i)))
} # But I get an error, because I cannot use integers
Error in FUN(X[[1L]], ...) :
only defined on a data frame with all numeric variables
尝试使用cumsum
cumsum(z1)[seq(0.5,2,by=0.5)] # Which doesn't work either
我想要一张这样的桌子:
Crit Cumulative Difference
0.5 0 0
1 3.1 3.1
1.5 8.2 5.1
【问题讨论】:
-
感谢您的指出。
标签: r