以 xts 格式过滤日期索引
filter date index in xts format
我从 FRED 下载了一些汇率,如何过滤索引日期以仅保留“2010”之后的日期?
它是一个 xts
对象,然后我们从索引中提取 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'))
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...
我从 FRED 下载了一些汇率,如何过滤索引日期以仅保留“2010”之后的日期?
它是一个 xts
对象,然后我们从索引中提取 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'))
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...