【问题标题】:Why is xts or quantmod coding each monday as 1?为什么 xts 或 quantmod 每个星期一都编码为 1?
【发布时间】:2019-06-08 00:15:04
【问题描述】:

quantmod::getSymbols 回到了奇怪的工作日,还是xts::.indexwday 把事情搞砸了?

library(quantmod)
symbols <- c("SPY", "QQQ")
dfs <- lapply(1:length(symbols), 
             function(i) 
               getSymbols(symbols[i], env = NULL, auto.assign=F))
table(xts::.indexwday(dfs[[1]]))

这只是返回从 0 到 4 的东西。为什么它将星期一编码为 0?

【问题讨论】:

  • 在世界许多地方,周从星期一开始,而不是星期日。
  • 我无法复制您的问题。如果我使用 quantmod 下载一些数据并使用 .indexwday,结果是 1 - 5 而不是 0-4。

标签: r xts quantmod


【解决方案1】:

xts::.indexwday 遵循 C99/POSIX 标准与POSIXlt 结构保持一致。请参阅?POSIXlt详细信息部分了解可能的值,其中显示:

'wday' 一周中的 0-6 天,从星期日开始。

这并不能解释为什么您会看到 Monday = 0。如果您的示例完全可重现,并且我们有来自sessionInfo() 的输出,那将会有所帮助。

【讨论】:

  • 刚刚添加了一些重现性,下次我使用产生错误的计算机时,我将检查sessionInfo 的输出。在这台机器上运行良好,所以你可能会做一些事情
猜你喜欢
  • 1970-01-01
  • 2016-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多