将一年中的几周转换为日期

Posted

技术标签:

【中文标题】将一年中的几周转换为日期【英文标题】:Converting weeks of year to dates 【发布时间】:2012-09-28 23:58:10 【问题描述】:

我有一个数据集,其中包含从年初开始的周数 (%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")

为什么会这样?如何才能做到正确?

【问题讨论】:

【参考方案1】:

试试这个:

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

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

【讨论】:

以上是关于将一年中的几周转换为日期的主要内容,如果未能解决你的问题,请参考以下文章

将一年中的某一天转换为某些日期格式具有 DDYYYY 并且某些日期格式具有 DDDYYYY 在 oracle 中的日期

将一年中的数字星期转换为 hiveql 中的日期 (yyyy-mm-dd)

Python在轴上将一年中的日期转换为月份

求关于js根据日期判断此日期是在一年中的第几周

你如何将 POSIX 日期转换为一年中的某一天?

将一列日期数字转换为缩写月份