gpt4 book ai didi

r - zoo/xts - 不能对 1-cell 子集进行数学运算? R 挂起

转载 作者:行者123 更新时间:2023-12-04 09:31:29 26 4
gpt4 key购买 nike

我在 Windows 上使用最新版本的 R/xts/zoo:R 2.15、xts 0.8-6、zoo 1.7-7

我看到了以下奇怪的行为,这在以前的版本中并非如此:

library(xts)
data(sample_matrix)
sample.xts <- as.xts(sample_matrix)

sample.xts[1, 2] - sample.xts[2,2] # results in numeric(0)?!?!?!
(sample.xts[ 1, 2] - sample.xts[2,2])/sample.xts[3,1] # if I run this twice R locks up

在这里,我将 XTS 对象子集到单个单元格。减法不再有效。此外,除法导致 R 完全锁定。

有其他人看到这个吗?这是一个已知的错误还是我遗漏了什么?我可以在两台机器上重现这个。

session 信息(一些包作为 secret 删除):
R version 2.15.0 (2012-03-30)
Platform: x86_64-pc-mingw32/x64 (64-bit)

locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252 LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C LC_TIME=English_United States.1252

attached base packages:
[1] parallel stats graphics utils datasets grDevices methods base

最佳答案

您永远无法减去具有非重叠索引的 xts/zoo 对象。算术运算总是在执行运算之前合并。您需要使用 coredata为了使您编写的减法提供您期望的结果。

coredata(sample.xts[1,2]) - coredata(sample.xts[2,2])

我可以复制第二个问题,但我不确定这应该是修复的高优先级,因为它不符合 zoo/xts 习惯用法并且会导致完全空的 xts 对象。如果(某些)索引对齐,一切都很好。
(sample.xts[1,2] - sample.xts[1,3]) / sample.xts[1,4]
(sample.xts[2,2] - sample.xts[1:2,3]) / sample.xts[2:3,4]

关于r - zoo/xts - 不能对 1-cell 子集进行数学运算? R 挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10516006/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com