В каждом «Id» я хотел бы создать переменную подсчета («Variable_x»), начинающуюся с «1», которая продолжается до «days»> 150. Когда это произойдет, я бы хотел, чтобы Variable_x »изменился на« 2 И продолжайте до тех пор, пока в следующий раз «days» не станет> 150, где оно должно измениться на «3» и так далее, как показано в примере ниже.
# Problem
Id <- c("A","A","A","A","A","A","B","B","B","B","B","B","B","B")
days <- c(18, 29, 4, 160, 4, 5,1, 6, 170, 4,190,45, 60,1 )
DATA_pre <- data.frame(Id, days)
DATA_pre
Id days
1 A 18
2 A 29
3 A 4
4 A 160
5 A 4
6 A 5
7 B 1
8 B 6
9 B 170
10 B 4
11 B 190
12 B 45
13 B 60
14 B 1
# Preferred Solution
Id <- c("A","A","A","A","A","A","B","B","B","B","B","B","B","B")
days <- c(18, 29, 4, 160, 4, 5,1, 6, 170, 4,190,45, 60,1 )
Variable_x <- c("1","1", "1", "2","2","2", "1","1","2","2","3","3","3","3")
DATA_post <- data.frame(Id, days, Variable_x)
DATA_post
Id days Variable_x
1 A 18 1
2 A 29 1
3 A 4 1
4 A 160 2
5 A 4 2
6 A 5 2
7 B 1 1
8 B 6 1
9 B 170 2
10 B 4 2
11 B 190 3
12 B 45 3
13 B 60 3
14 B 1 3