我想按月下载FRED数据。有没有什么方法可以按月而不是按天下载数据?提前致谢。
getSymbols("GOLDPMGBD228NLBM", src = "FRED")
答案 0 :(得分:2)
假设您想要月末值:
您可以照常下载数据,然后使用period.apply
,endpoints
和last
函数获取每个月的最后一次观察:
library(quantmod)
getSymbols("GOLDPMGBD228NLBM", src = "FRED")
x <- na.omit(GOLDPMGBD228NLBM)
eom_quantmod <- period.apply(x, endpoints(x, on = "months"), last)
您还可以使用FredR包下载数据:https://github.com/jcizel/FredR
library(FredR)
key <- "your_fred_api_key"
fred <- FredR(key)
eom_fredr <- fred$series.observations(
series_id = "GOLDPMGBD228NLBM",
frequency = "m",
aggregation_method = "eop")
我们在两种情况下都得到相同的值:
tail(eom_quantmod); tail(eom_fredr[, c("date", "value")])
# GOLDPMGBD228NLBM
# 2016-08-31 1309.25
# 2016-09-30 1322.50
# 2016-10-31 1272.00
# 2016-11-30 1178.10
# 2016-12-29 1145.90
# 2017-01-06 1175.85
# date value
# 1: 2016-08-01 1309.250
# 2: 2016-09-01 1322.500
# 3: 2016-10-01 1272.000
# 4: 2016-11-01 1178.100
# 5: 2016-12-01 1145.900
# 6: 2017-01-01 .