xts包中的reclass函数有什么作用?

时间:2014-04-16 05:57:43

标签: r xts

我认为是将xts对象转换为原始类,但是在将xts对象传递给它之后,它没有给我原始对象。这是为了什么?

我的尝试

data(sample_matrix)
class(sample_matrix)
#"matrix"
class(reclass(as.xts(sample_matrix)))
#"xts" "zoo"

2 个答案:

答案 0 :(得分:2)

reclass的调用会将对象返回到其原始类,所有原始属性都保持不变 - 除非另有更改。

来自文档:

  

Reclass专为顶层使用而设计   从同一个类中的任意函数返回的对象   传入的对象.R中的大多数函数都不是为了设计的   返回与原始对象的类匹配的对象。虽然这个工具   它目前是高度实验性的,它试图处理转换   并透明地重新转换。警告是原始的   对象必须对xts具有强制性,返回的对象必须是   与原始对象相同的行长度,以及该对象的行长度   reconvert to是被包装函数的第一个参数。

答案 1 :(得分:2)

来自文档

  

try.xts 重新分类是支持外部开发人员的功能   访问xts中的重新分类工具,以帮助加快开发速度   时间感知功能,以及提供更强大和无缝   最终用户体验,无论最终用户的选择如何   数据类。

如果您使用try.xtsxtsible对象转换为xts个对象,则reclassReclass两者都应该能够将其转换回它&# 39;原始类,所有属性都完好无损。

class(Reclass(try.xts(sample_matrix)))
## [1] "matrix"

class(reclass(try.xts(sample_matrix)))
## [1] "matrix"