微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 R 中使用 getSymbols 函数时出现错误警告

如何解决在 R 中使用 getSymbols 函数时出现错误警告

我正在尝试使用以下代码从雅虎财经获取比特币数据:

getSymbols("BTC-USD",from= "2020-01-01",to="2020-12-31",warnings=FALSE,auto.assign = TRUE)
BTC-USD=BTC-USD[,"BTC-USD.Adjusted"]

但是,我收到以下错误

警告信息:

BTC-USD contains missing values. Some functions will not work if objects contain missing values in the middle of the series. Consider using na.omit(),na.approx(),na.fill(),etc to remove or replace them.

我该如何解决这个问题?

谢谢。

解决方法

您遇到了第一个问题,即您试图分配给无效符号。使用 _ 代替减法运算符 -。如果您真的想要-,您可以在符号周围使用反引号。

然后您可以使用 is.na 查找 NA 值并将其替换为 0。

library(quantmod)
getSymbols("BTC-USD",from= "2020-01-01",to="2020-12-31",warnings=FALSE,auto.assign = TRUE)
BTC_USD <- `BTC-USD`[,"BTC-USD.Adjusted"]
BTC_USD[is.na(BTC_USD)] <- 0

BTC_USD[100:110,]
#           BTC-USD.Adjusted
#2020-04-09         7302.089
#2020-04-10         6865.493
#2020-04-11         6859.083
#2020-04-12         6971.092
#2020-04-13         6845.038
#2020-04-14         6842.428
#2020-04-15         6642.110
#2020-04-16         7116.804
#2020-04-17            0.000
#2020-04-18         7257.665
#2020-04-19         7189.425

更好的计划可能是删除 NA 行而不是用 0 替换它们:

BTC_USD <- BTC_USD[!is.na(BTC_USD),]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。