繁体   English   中英

以 xts 格式过滤日期索引

[英]filter date index in xts format

我从 FRED 下载了一些费率,如何过滤索引日期以仅保留“2010”之后的日期?

在此处输入图像描述

xts 接受 / 表示法,如下所示:

library(quantmod)
getSymbols("DGS3MO", src = "FRED") # generate test data

DGS3MO["2010/"]
##            DGS3MO
## 2010-01-01     NA
## 2010-01-04   0.08
## 2010-01-05   0.07
## 2010-01-06   0.06
## 2010-01-07   0.05
## 2010-01-08   0.05
## ...snip...

或者,xts 有一个 window 方法:

window(DGS3MO, start = "2010-01-01")
##            DGS3MO
## 2010-01-01     NA
## 2010-01-04   0.08
## 2010-01-05   0.07
## 2010-01-06   0.06
## 2010-01-07   0.05
## 2010-01-08   0.05
## ...snip...

它是一个xts object,然后我们从索引中提取year以创建用于子集的逻辑向量

library(xts)
xt1[lubridate::year(index(xt1)) >= 2010]

或使用带有%>%subset

library(dplyr)
xt1 %>%
       subset(year(index(.))>= 2010)

数据

set.seed(24)
xt1 <- xts(rnorm(50), order.by = seq(as.Date('2009-01-01'), 
    length.out = 50, by = '1 month'))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM