This is likely a duplicated question because what I am asking for is quite simple. I need to numerate a column of dates by a grouping variable, where it tells me what day the user is on within my data.
Here is a mock dataframe:-
UserID<-c("050c60043c", "050c60043c", "050c60043c", "050c60043c", "050c60043c",
"050c60043c", "050c60043c", "050c60043c", "050c60043c", "050c60043c",
"050c60043c", "050c60043c", "050c60043c", "050c60043c", "050c60043c",
"050c60043c", "050c60043c", "050c60043c", "050c60043c", "050c60043c",
"050c60043c", "050c60043c", "547a235451", "547a235451", "547a235451",
"547a235451", "547a235451", "547a235451", "547a235451", "547a235451",
"547a235451", "547a235451", "547a235451", "547a235451", "547a235451",
"547a235451")
Date<-structure(c(16480, 16480, 16480, 16482, 16482, 16482, 16483,
16483, 16483, 16484, 16484, 16484, 16485, 16486, 16486, 16486,
16488, 16488, 16488, 16489, 16490, 16490, 16481, 16482, 16483,
16484, 16484, 16484, 16484, 16485, 16486, 16486, 16487, 16487,
16487, 16488), class = "Date")
df<-data.frame(UserID,Date)
And here is what I am trying to replicate. I add a "Day" column in to the df :-
Day<-c(1L, 1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L, 4L, 4L, 4L, 5L, 6L, 6L,
6L, 7L, 7L, 7L, 8L, 9L, 9L, 1L, 2L, 3L, 4L, 4L, 4L, 4L, 5L, 6L,
6L, 7L, 7L, 7L, 8L)
df<-data.frame(UserID,Date,Day)
df
UserID Date Day
1 050c60043c 2015-02-14 1
2 050c60043c 2015-02-14 1
3 050c60043c 2015-02-14 1
4 050c60043c 2015-02-16 2
5 050c60043c 2015-02-16 2
6 050c60043c 2015-02-16 2
7 050c60043c 2015-02-17 3
8 050c60043c 2015-02-17 3
9 050c60043c 2015-02-17 3
10 050c60043c 2015-02-18 4
11 050c60043c 2015-02-18 4
12 050c60043c 2015-02-18 4
13 050c60043c 2015-02-19 5
14 050c60043c 2015-02-20 6
15 050c60043c 2015-02-20 6
16 050c60043c 2015-02-20 6
17 050c60043c 2015-02-22 7
18 050c60043c 2015-02-22 7
19 050c60043c 2015-02-22 7
20 050c60043c 2015-02-23 8
21 050c60043c 2015-02-24 9
22 050c60043c 2015-02-24 9
23 547a235451 2015-02-15 1
24 547a235451 2015-02-16 2
25 547a235451 2015-02-17 3
26 547a235451 2015-02-18 4
27 547a235451 2015-02-18 4
28 547a235451 2015-02-18 4
29 547a235451 2015-02-18 4
30 547a235451 2015-02-19 5
31 547a235451 2015-02-20 6
32 547a235451 2015-02-20 6
33 547a235451 2015-02-21 7
34 547a235451 2015-02-21 7
35 547a235451 2015-02-21 7
36 547a235451 2015-02-22 8
As you can see, each date is numerate, telling me which day it is for that respective UserID. Probably a very easy solution but any pointers would be great :)