2012-10-08 86 views
8

我从今年(%W)的开头周数的数据集,我想转换为日期,以便使用日期x轴绘制它转换周今年将日期

dat <- structure(data.frame(week = c(22, 34, 15), year = c(2009, 2009, 2010), x = c(3.4, 5.2, 1.3))) 

我尝试在这里转换基于earlier questions的星期,但最终每个日期得到"YYYY-10-01"

as.Date(paste("01", dat$week, dat$year, sep = "-"), format = "%d-%W-%Y") 

为什么是这样以及怎么做才对?

回答

10

试试这个:

as.Date(paste("1", dat$week, dat$year, sep = "-"), format = "%w-%W-%Y") 

一个星期,一年不指定日期,所以你需要一个“天”,但你需要的“星期几”,或%w,而不是“一个月中的某天”,或%d。在这种情况下,我使用了星期一(即1)。另外,显然%w不喜欢前导零。