子集R中的xts对象的值时超出范围错误

弗洛伦特

我想基于另一个xts对象中的逻辑值对xts对象中的日期进行子集设置,但是R会返回超出范围的错误,尽管值在范围内。

例如,我想过滤RSI高于60的日期和价格。

> strength <- RSI(d, 14)>60
> strength["2016-10-17::"]
             RSI
2016-10-17  TRUE
2016-10-18  TRUE
2016-10-19  TRUE
2016-10-20 FALSE
2016-10-21 FALSE

> d["2016-10-17::"]
               Open
2016-10-17 642.2760
2016-10-18 640.5988
2016-10-19 637.0000
2016-10-20 631.9800
2016-10-21 633.6470

> d["2016-10-17::"][strength == TRUE]
Error in `[.xts`(d["2016-10-17::"], strength == TRUE) : 
  'i' or 'j' out of range

这不是我期望的输出,因为我的两个对象都具有直到2016年10月21日的数据。有什么事吗 我想要类似的东西:

> d["2016-10-17::"][strength == TRUE]
               Open
2016-10-17 642.2760
2016-10-18 640.5988
2016-10-19 637.0000

这是str我的xts对象的:

> str(d)
An ‘xts’ object on 2013-09-02/2016-10-21 containing:
  Data: num [1:1146, 1] 127 128 121 121 116 ...
 - attr(*, "dimnames")=List of 2
  ..$ : NULL
  ..$ : chr "Open"
  Indexed by objects of class: [Date] TZ: UTC
  xts Attributes:  
List of 2
 $ dateFormat: chr "Date"
 $ na.action :Class 'omit'  atomic [1:92] 1 2 3 4 5 6 7 8 9 10 ...
  .. ..- attr(*, "index")= num [1:92] 1.37e+09 1.37e+09 1.37e+09 1.37e+09 1.37e+09 ...

> str(strength)
An ‘xts’ object on 2013-09-16/2016-10-21 containing:
  Data: logi [1:1132, 1] FALSE FALSE FALSE FALSE FALSE FALSE ...
 - attr(*, "dimnames")=List of 2
  ..$ : NULL
  ..$ : chr "RSI"
  Indexed by objects of class: [Date] TZ: UTC
  xts Attributes:  
 NULL
> 

谢谢

FXQuantTrader

您没有提供可复制的示例,因此这里有一些玩具数据。您的问题是,您没有在相同的时间窗口内对强度进行子集化(因此内部strength == TRUE逻辑序列的行长度与d行长度不同,从而产生了错误,即NROW(strength == TRUE)>> NROW(d["2016-10-17::"])):

library(quantmod)
getSymbols("AAPL")
d <- AAPL
strength <- RSI(Cl(d)) > 60

如果执行此操作,则不会出现错误:

d["2016-10-17::"][strength["2016-10-17::"] == TRUE]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

替换xts对象中的值,避免下标超出范围错误

来自分类Dev

R中的下标超出范围错误

来自分类Dev

R中的下标超出范围错误

来自分类Dev

错误帮助,高值时超出范围

来自分类Dev

用R中的平均组替换缺失值-错误:超出范围

来自分类Dev

使用R在XTS中修改子集数据范围的值

来自分类Dev

如何克服R中的此“下标超出范围”错误?

来自分类Dev

错误:值超出范围:下溢

来自分类Dev

错误:值超出范围:下溢

来自分类Dev

R错误类型“下标超出范围”

来自分类Dev

R错误类型“下标超出范围”

来自分类Dev

超出范围错误?

来自分类Dev

MATLAB中的索引超出范围错误

来自分类Dev

代码中的下标超出范围错误

来自分类Dev

在进行二进制分类时,如何解决predict()中的错误:R中的下标超出范围?

来自分类Dev

IndexError:范围对象索引超出范围错误

来自分类Dev

使用矩阵索引列矩阵时,如何理解错误“超出范围的子对象”

来自分类Dev

在视图中删除绑定对象时出现“致命错误:索引超出范围”

来自分类Dev

尝试查找列表6的值1长时,Python列出“列表索引超出范围”错误

来自分类Dev

当构建器获得的值大于9时,PageView小部件中出现超出范围的错误

来自分类Dev

对象必需错误-为什么这超出范围?

来自分类Dev

在列表对象上获取下标超出范围错误

来自分类Dev

使用Golang中的类型断言检测值超出范围的错误

来自分类Dev

在搜索和滚动结果时快速在Tableview中获取索引超出范围错误

来自分类Dev

在Azure数据工厂中创建SnowFlake链接服务时出现索引超出范围错误

来自分类Dev

致命错误:从数组swift的索引中删除时,索引超出范围(lldb)

来自分类Dev

数组超出范围错误

来自分类Dev

OpenCL超出范围错误

来自分类Dev

字数超出范围错误

Related 相关文章

  1. 1

    替换xts对象中的值,避免下标超出范围错误

  2. 2

    R中的下标超出范围错误

  3. 3

    R中的下标超出范围错误

  4. 4

    错误帮助,高值时超出范围

  5. 5

    用R中的平均组替换缺失值-错误:超出范围

  6. 6

    使用R在XTS中修改子集数据范围的值

  7. 7

    如何克服R中的此“下标超出范围”错误?

  8. 8

    错误:值超出范围:下溢

  9. 9

    错误:值超出范围:下溢

  10. 10

    R错误类型“下标超出范围”

  11. 11

    R错误类型“下标超出范围”

  12. 12

    超出范围错误?

  13. 13

    MATLAB中的索引超出范围错误

  14. 14

    代码中的下标超出范围错误

  15. 15

    在进行二进制分类时,如何解决predict()中的错误:R中的下标超出范围?

  16. 16

    IndexError:范围对象索引超出范围错误

  17. 17

    使用矩阵索引列矩阵时,如何理解错误“超出范围的子对象”

  18. 18

    在视图中删除绑定对象时出现“致命错误:索引超出范围”

  19. 19

    尝试查找列表6的值1长时,Python列出“列表索引超出范围”错误

  20. 20

    当构建器获得的值大于9时,PageView小部件中出现超出范围的错误

  21. 21

    对象必需错误-为什么这超出范围?

  22. 22

    在列表对象上获取下标超出范围错误

  23. 23

    使用Golang中的类型断言检测值超出范围的错误

  24. 24

    在搜索和滚动结果时快速在Tableview中获取索引超出范围错误

  25. 25

    在Azure数据工厂中创建SnowFlake链接服务时出现索引超出范围错误

  26. 26

    致命错误:从数组swift的索引中删除时,索引超出范围(lldb)

  27. 27

    数组超出范围错误

  28. 28

    OpenCL超出范围错误

  29. 29

    字数超出范围错误

热门标签

归档