我是R.的新手 我有一个每周时间序列数据集,日期列如下:
1/10/2004
1/17/2004
1/24/2004
1/31/2004
2/7/2004
.
.
1/3/2015
1/10/2015
我想创建一个看起来像这样的索引(W代表一周):
2004W1
2004W2
.
.
2004W52
2005W1
2005W2
.
.
.
2015W1
2015W2
什么是正确的代码?我可以使用函数ts来做吗?我试过这个:
data=ts(mydata,start=c(2004,1),freq=48)
但它没有完成这项工作
感谢您的帮助:)
答案 0 :(得分:0)
您可以使用POSIXlt
:它没有$ week元素,但您可以使用模数除法:
vec = c("1/10/2004", "1/17/2004", "1/24/2004")
paste0("20", as.POSIXlt(vec, format="%m/%d/%Y")$year, "W", as.POSIXlt(vec, format="%m/%d/%Y")$yday %/% 7)
#[1] "20104W1" "20104W2" "20104W3"