I have a table trips
with the following information
Row | User | Timestamp | Event |
---|---|---|---|
1 | 1 | 29/06/2022 17:18:03 | Walking |
2 | 1 | 29/06/2022 17:18:02 | Walking |
3 | 1 | 29/06/2022 17:18:01 | Start |
4 | 1 | 28/06/2022 19:21:03 | Walking |
5 | 1 | 28/06/2022 19:21:02 | Walking |
6 | 1 | 28/06/2022 19:21:01 | Start |
7 | 2 | 27/06/2022 17:36:03 | Walking |
8 | 2 | 27/06/2022 17:36:02 | Walking |
9 | 2 | 27/06/2022 17:36:01 | Start |
10 | 2 | 27/06/2022 16:55:03 | Walking |
11 | 2 | 27/06/2022 16:55:02 | Walking |
12 | 2 | 27/06/2022 16:55:01 | Start |
I would like to add a column that groups the users by User
, sorts by Timestamp
descending, and then identifies different trips wherever 'Start' is followed by 'Walking'. The identified trips should then be allocated a trip number in Trip nr
.
Row | User | Timestamp | Event | Trip Nr |
---|---|---|---|---|
1 | 1 | 29/06/2022 17:18:03 | Walking | 4 |
2 | 1 | 29/06/2022 17:18:02 | Walking | 4 |
3 | 1 | 29/06/2022 17:18:01 | Start | 4 |
4 | 1 | 28/06/2022 19:21:03 | Walking | 3 |
5 | 1 | 28/06/2022 19:21:02 | Walking | 3 |
6 | 1 | 28/06/2022 19:21:01 | Start | 3 |
7 | 2 | 27/06/2022 17:36:03 | Walking | 2 |
8 | 2 | 27/06/2022 17:36:02 | Walking | 2 |
9 | 2 | 27/06/2022 17:36:01 | Start | 2 |
10 | 2 | 27/06/2022 16:55:03 | Walking | 1 |
11 | 2 | 27/06/2022 16:55:02 | Walking | 1 |
12 | 2 | 27/06/2022 16:55:01 | Start | 1 |
How can I achieve this optimally?