我有这样的日期列表:
library(lubridate)
my.dates <- c("03-01-2006", "28-01-2006", "12-01-2008", "02-02-2006", "03-03-2008")
my.dates <- dmy(my.dates)
Run Code Online (Sandbox Code Playgroud)
我需要从下面的每个日期中提取一年中的日期编号,其中1月1日是第1天:
day.number <- c(3, 28, 12, 33, 62)
Run Code Online (Sandbox Code Playgroud)
我有一个很好的搜索谷歌和SO,但无法找到一个简单的方法来做到这一点.帮助表示感谢,谢谢.
Aru*_*run 18
您可以使用yday函数,lubridate因为您已经在使用它:
> yday(my.dates)
# [1] 3 28 12 33 63
Run Code Online (Sandbox Code Playgroud)
sta*_*ant 17
试着POSIXlt和其attributes(my.dates)
my.dates = as.POSIXlt(my.dates,format="%d-%m-%Y")
my.dates$mday
[1] 3 28 12 2 3
my.dates$yday
[1] 2 27 11 32 62
Run Code Online (Sandbox Code Playgroud)