使用getSymbols的subset参数限定日期范围却获错误数据的问题
getSymbols函数subset参数不生效问题解决
当设置subset='2023-01::2023-07'调用getSymbols时,返回数据的起始日期却是2007-01-03,尝试多种日期格式都无法解决问题,比如:
getSymbols("AAPL",subset='01-2023::06-2023')getSymbols("AAPL",subset='01-01-2023::01-06-2023')
实用解决方法
- 替换为from/to参数
直接使用from和to参数指定日期范围,这是更可靠的方式:
getSymbols("AAPL", from = "2023-01-01", to = "2023-07-31")
- 手动筛选数据
先获取全量数据,再用xts/zoo的日期索引进行过滤:
getSymbols("AAPL") AAPL_subset <- AAPL["2023-01/2023-07"]
- 更新依赖包
subset参数的解析依赖xts和zoo包,确保这两个包是最新版本:
update.packages(c("xts", "zoo"))
- 明确指定数据源
不同数据源对subset的处理逻辑可能有差异,明确指定数据源(比如Yahoo Finance):
getSymbols("AAPL", subset = "2023-01::2023-07", src = "yahoo")
内容的提问来源于stack exchange,提问作者Carlos
相关产品推荐
相关产品推荐

