【发布时间】:2019-01-21 01:06:25
【问题描述】:
我有以下数据框:
N=seq(1:18)
Pre=c(0.5, 0.4, 0.7, 0.9, 0.6, 0.3, 0.7, 0.8, 0.6, 0.5, 0.4, 0.7, 0.9, 0.6, 0.3, 0.7, 0.8, 0.6)
df1=data.frame(N, Pre)
E=c(3.1, 2.9, 4.4)
Category=c(22,35,36)
df2=data.frame(E, Category)
我想在 df1 中创建两个新列(cumsum 和 category)
cumsum 列中的值将累积,直到该值等于或小于 df2$E 的值,当它大于时,cumsum 将重新开始。在category 列中,值将是 22,35 或 36 等。
结果是
这是一个简短的示例,我需要使用非常大的数据框来执行此操作。
【问题讨论】: