根据一组条件计算多个变量的重复次数

时间:2017-12-29 14:24:02

标签: r dataframe

我已经找到了答案,但遗憾的是,他没有成功。我想创建一个基于以下条件识别重复的变量:

  1. 只要A中的连续值与前一行相同,计数器值就保持不变,否则更新
  2. 只要B中的连续值与前一行相同,计数器值就保持不变
  3. 只要C中的连续值与前一行相同,计数器值就保持不变
  4. 当序列从B列切换到C或反之为
  5. 时,计数器值会发生变化
  6. 在重叠的情况下(即,当序列同时出现在B和C中时),首先启动的序列具有优先级(例如,数据帧中的行6和7)
  7. 以下是使用'计数器'的数据集示例。变量是我想要的结果。

    df = data.frame(A = rep(1:2, c(13,7)), 
                    B = c(3,1,1,1,1,1,3,3,1,2,1,1,1,1,1,3,3,3,2,1), 
                    C = c("b","s","f","b","s","b","b","s","s","s","f","p","s","p","f","b","s","p","f","p"), 
                    counter = c(1,2,2,2,2,2,3,3,4,4,5,5,5,6,6,7,7,7,8,9))
    

    感谢您的帮助!

0 个答案:

没有答案