我有一个数据集“Stops”,如下所示:
ID response startno
1 Yes 1
1 Yes
1 Yes
1 No
2 Yes
2 Yes
2 No
2 No 1
我想添加一个计数器,该计数器从每个 ID 的第一条或最后一条记录开始,具体取决于 startno 中的“1”:
ID response startno counter
1 Yes 1 1
1 Yes 2
1 Yes 3
1 No 4
2 Yes 4
2 Yes 3
2 No 2
2 No 1 1
起始记录将始终是第一个或最后一个记录。我用它来获得前向计数:
Stops$counter<-ave(Stops$ID,Stops$ID,FUN=seq_along)
但是我不知道如何让它检查它应该前进还是后退。任何帮助深表感谢。