使用R,我试图将某些日期转换为yyddd序数日期格式(例如2010-12-31到10365),但我没有成功,因为我得到了错误的值。
这是一个工作示例。
dates<-as.data.frame(c("20040101", "20040102", "20040103",
"20041229", "20041230", "20041231"))
cols <- "date"
colnames(dates) <- cols
dates$date.format1<- as.Date(as.character(dates$date), "%Y%m%d")
dates$date.format2<- strptime(dates$date.format1, "%y%j")
我期待的是04001,04002,04003,04363,04364,04365
任何帮助都将非常感激。
致以最诚挚的问候,
何
答案 0 :(得分:1)
如果我们将strptime
替换为format
:
> format(as.Date(dates$date, "%Y%m%d"), "%y%j")
[1] "04001" "04002" "04003" "04364" "04365" "04366"
注意:我们用作输入:
dates <- data.frame(date = c("20040101", "20040102", "20040103",
"20041229", "20041230", "20041231"))