5

有没有办法从 data.frame 创建 xts 对象并保留数据类型?我的数字正在转换为字符。2009 年的这篇文章建议将列合并到现有的 xts 中: http: //r.789695.n4.nabble.com/as-xts-convert-all-my-numeric-data-to-character-td975564.html

目前尚不清楚这是否是唯一的方法。对于大型数据帧来说,这似乎有点麻烦和麻烦。我认为开箱即用的 xts 会尊重数据类型。

4

2 回答 2

7

不,你不能。xts/zoo 对象是具有索引属性的矩阵,您不能在矩阵中混合类型。

我们考虑过创建一个 xts-data.frame 类,但 xts 的主要关注点是速度和内存效率。data.frames 速度和内存效率不高,因此这不是优先事项。

于 2011-07-01T16:15:39.160 回答
4

我有同样的问题,我的解决方案是在指定数据对象时不包括时间列。只要所有其他列都是同一类型,就应该没有问题。

IE

数据 <- xts(data[,2:6], order.by = data$time, unique = FALSE, tzone = "")

(data$time 是第一列,是 POSIXct,所以我将其排除在外。其他一切都是数字)

于 2011-07-23T03:24:47.573 回答