I have two weekly data sets, one collected on Wednesday and one on Friday:
library(lubridate)
#Data set released Wed
Date1 <- c("02/10/2013","9/10/2013","16/10/2013","23/10/2013")
Data1 <- c(1,2,3,4)
df1 <- data.frame(Date1 ,Data1)
df1
#Weekly Data Set released Fri
Date2 <- c("04/10/2013","11/10/2013","18/10/2013","25/10/2013")
Data2 <- c(2,4,6,8)
df2 <- data.frame(Date2 ,Data2)
df2
I would then like to merge by week of the year
week(df1$Date1)
[1] 42 42 43 42
week( df2$Date2 )
[1] 43 42 42 42
But I seem to be getting an incorrect output.
I would be grateful for your help to know what I am doing wrong.
> df1$week <- format(df1$Date1, "%U")
> df2$week<- format(df2$Date2, "%U")
> df1
Date1 Data1 week
1 2013-10-02 1 39
2 2013-10-09 2 40
3 2013-10-16 3 41
4 2013-10-23 4 42
> df2
Date2 Data2 week
1 2013-10-04 2 39
2 2013-10-11 4 40
3 2013-10-18 6 41
4 2013-10-25 8 42
> merge(df1, df2, by="week")
week Date1 Data1 Date2 Data2
1 39 2013-10-02 1 2013-10-04 2
2 40 2013-10-09 2 2013-10-11 4
3 41 2013-10-16 3 2013-10-18 6
4 42 2013-10-23 4 2013-10-25 8