0

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

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

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

编辑:

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

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

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

1 回答 1

2

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

将编写正确编写的方法,以查看受欢迎的类是在类属性列表中还是在其继承的类之一中。在您的情况下,您(或您的一个程序)似乎出现了数据输入错误,并将您认为应该是数字向量的内容转换为因子向量,或者设计人员认为因子变量是要返回的逻辑对象。通过识别对象或组件并使用 'as.numeric(as.character(facvar))` 强制它,您可能会获得成功。(该特定方法是一个常见问题解答问题。)这里更好的方法是确定输入或处理错误的来源。

于 2012-04-18T04:25:13.313 回答