如何按组将后续Seq的最大值赋值给Condition=yes行的Want_final_v1?
数据集与变量生成需求
示例数据集
ID Time Condition Seq Want_temp Want_final_v1 A 1 yes 0 0 0 A 2 yes 0 . 1 A 3 no 1 . . A 4 yes 0 . 2 A 5 no 1 . . A 6 no 2 . . B 1 yes 0 . 4 B 2 no 1 . . B 3 no 2 . . B 4 no 3 . . B 5 no 4 . . B 6 yes 0 0 0 B 7 yes 0 0 0 ...
变量说明与生成规则
- 现有变量:
ID、Time、Condition、Seq、Want_temp(已完成生成) - 待生成目标变量:
Want_final_v1 Seq逻辑:当Condition取值为"yes"时从0开始计数;后续每遇到Condition为"no",Seq递增1。Want_final_v1规则:- 当
Condition == "yes"时,默认取值0; - 若该行后续存在
Condition == "no"的记录,则填入对应段(同一次yes起始后的连续no段)中Seq的最大值。
- 当
内容的提问来源于stack exchange,提问作者Todd
相关产品推荐
相关产品推荐

