我可以更改R对象的属性

时间:2012-04-18 04:17:37

标签: r class object properties

我的Ldt1对象具有以下属性。

> is(Ldt1)
[1] "data.frame" "list"       "oldClass"   "vector"

我想将其更改为data.frame。我该怎么做 ?

编辑:

我在回答“为什么?”的问题。

我需要在两个包之间工作。第一个包适用于不同的类对象,第二个包适用于不同的类。在数据操作过程中,我遇到了带有对象的uncessary类类型的问题,它给出了一条错误消息:

No method for an object of class genotypeNo method for an object of class factor

1 个答案:

答案 0 :(得分:2)

你根本做不到。所有data.frame都是列表,所有列表都是向量。 (无论如何,你为什么要做这样的事情?)

将编写正确编写的方法以查看所追求的类是在类属性的列表中还是在其继承的类之一中。在您的情况下,您(或您的某个程序)似乎发生了数据输入错误,并将您认为应该是数字向量的数据转换为因子向量,或者设计者认为因子变量是要返回的逻辑对象。您可以通过识别对象或组件并使用'as.numeric(as.character(facvar))`强制它来获得成功。 (That particular method is a FAQ question.)此处更好的方法是确定输入或处理错误的来源。