gpt4 book ai didi

r - 有没有办法让 merge.xts 保持名称不变?

转载 作者:行者123 更新时间:2023-12-01 02:28:48 25 4
gpt4 key购买 nike

我使用 R 的目的很少对性能敏感,但对于一项缓慢的任务,我已从使用数据帧切换到 xts对象具有大约 10 倍的非常令人满意的加速。

但是,我遇到了 merge.xts 的怪癖。 ,也就是合并xts的时候好像坚持要检查列名对象。文档指出该函数扩展了 merge.zoomerge.zoo服从 check.names = FALSE但是通过下面的代码merge.xts才不是。

问:是否可以强制merge.xts保持我的列名不变?而不是,我可以使用 merge.zoo (确实有效)在简单 xts 上可互换对象?

library(xts)
set.seed(54321)
xts1 <- xts(runif(5, 100, 200), order.by = seq(as.Date('2013-01-14'),
as.Date('2013-01-18'), by = "day"))
xts2 <- xts(runif(5, 1000, 2000), order.by = seq(as.Date('2013-01-14'),
as.Date('2013-01-18'), by = "day"))
names(xts1) <- 'my value 1'
names(xts2) <- 'my value 2'
xts1
xts2
xts.new <- merge.xts(xts1, xts2)
xts.new # names have been changed: unwanted behaviour
xts.new <- merge.xts(xts1, xts2, check.names = FALSE)
xts.new # argument is ignored, instead column called 'check.names' is added
zoo.new <- merge.zoo(xts1, xts2, check.names = FALSE)
zoo.new # check.names argument is honoured, names remain unchanged (good!)

最佳答案

是不是不能强制merge.xts保持列名不变(没有对底层 C 代码的补丁)。

在您的问题中,您使用了 merge.zoo在您的 xts 对象上...所以我不确定您的问题是什么。如果您不喜欢那样 zoo.new是一个动物园对象,只需将其包裹在 as.xts .

关于r - 有没有办法让 merge.xts 保持名称不变?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14420332/

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