基于R中的规则的累积列

陶eq

我有一个增量开发数据。每个开发编号列均显示ClaimNo的单独付款。

ClaimNo<-c("3333","11111","01010","15060")
AccidentPeriod <- c(0,3,1,2)
Information<-c("Infor","Infor","Infor","Infor")
Dev0<-c(100,40,50,0)
Dev1<-c(0,0,100,15)
Dev2<-c(50,0,0,0)
Dev3<-c(0,0,0,0)

IncrementalData<-data.frame(ClaimNo,AccidentPeriod,Information,Dev0,Dev1,Dev2,Dev3)

在此处输入图片说明

我需要获取使其累积。对列求和应在对角线处停止。例如,我们知道我们有4个开发阶段。当声明的AccidentPeriod为2时,求和应该在Dev2处停止,因为AccidentPeriod + Dev#不能超过3(我们从0开始)。

If the AccidentPeriod is 0, summing of Dev# should stop at 3
If the AccidentPeriod is 2, summing of Dev# should stop at 1
If the AccidentPeriod is 1, summing of Dev# should stop  at 2

我可以为每个累积列编写ifelse函数,以获取此累积数据。但是列太多了。应该有一个短途..

这就是我所需要的。

在此处输入图片说明

如果要在VBA上编写此代码:

DevCum_0=Dev0
for a=1 to 3
b=a-1
DevCum_a=Deva+DevCum_b

谢谢!

托马斯·艾斯科丁

您可以尝试以下代码 apply

indsDev <- grep("^Dev",names(IncrementalData))
dfout <- cbind(
    IncrementalData[-indsDev],
    t(apply(
        IncrementalData,
        1,
        function(x) {
            x[min(indsDev):(max(indsDev) - as.numeric(x[2]))] <- head(cumsum(x[indsDev]), length(indsDev) - as.numeric(x[2]))
            `class<-`(x[indsDev], "numeric")
        }
    ))
)

这样

> dfout
  ClaimNo AccidentPeriod Information Dev0 Dev1 Dev2 Dev3
1    3333              0       Infor  100  100  150  150
2   11111              3       Infor   40    0    0    0
3   01010              1       Infor   50  150  150    0
4   15060              2       Infor    0   15    0    0

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R中的累积曲线

来自分类Dev

熊猫数据框中基于列比较的条件累积和

来自分类Dev

通知R中另一列值的累积列总和

来自分类Dev

一列基于另一列(R)的值的累积总和

来自分类Dev

SQL-sql中的累积总和,基于连续日期

来自分类Dev

R中的“累积差异”功能

来自分类Dev

R中基于列值的编号

来自分类Dev

基于数据帧同一行中不同列的值的累积总和(避免循环)

来自分类Dev

如何从r中的累积列创建列?

来自分类Dev

如何将R中矩阵的列(累积和)相加?

来自分类Dev

基于delim的独立行基于r中的两列

来自分类Dev

R中基于列内容的行重复

来自分类Dev

基于另一个规则的新列(值中包含数字)

来自分类Dev

R中的累积曲线

来自分类Dev

根据r中列的累积值拆分数据

来自分类Dev

通知R中另一列值的累积列总和

来自分类Dev

R列中的自动累积计算

来自分类Dev

python中不规则的累积和

来自分类Dev

r中基于两列的累积总和

来自分类Dev

一列基于另一列(R)的值的累积总和

来自分类Dev

SQL-sql中的累积总和,基于连续日期

来自分类Dev

R中基于列值的编号

来自分类Dev

如何基于Excel中的非累积分类列动态创建累积总计

来自分类Dev

基于某些列值的累积总和

来自分类Dev

R中基于列名的子设置列

来自分类Dev

基于r中的多个条件创建列

来自分类Dev

基于 R 中的日期范围创建列

来自分类Dev

R中基于规则的数据框格式

来自分类Dev

在 R 中运行(累积)产品?