我有一份年份(1-365)和年份(例如:2012-2015)的列表。我如何从此列表中转换日期?
我尝试了as.Date(x,origin =" 2012-01-01")但是这只适用于2013年的第一年,它再次从1-365天开始重复其他年份。
样品:
days <- c(262,263,264)
years <- c(2017,2017,2017)
答案 0 :(得分:1)
您需要根据列表中的年份设置原点,例如:
library(lubridate)
df <- data.frame(dayyear = c(1, 100, 300, 1), year = c(2013,2013,2013, 2014))
df$origin <- as.Date(paste0(df$year, "-01-01"),tz = "UTC") - days(1)
as.Date(df$dayyear, origin = df$origin, tz = "UTC")
[1] "2013-01-01" "2013-04-10" "2013-10-27" "2014-01-01"