从列表中访问对象方法

时间:2013-11-01 00:12:01

标签: r list object

R有点新,我在访问列表中的对象时遇到了一些麻烦。

我在这样的列表中创建我的对象:

myObjects <- vector("list", P)
for(i in 1:10){
  myObjects[[i]] <- new.myObject()
}

然后我想访问我在代码中创建的一些方法,所以我必须像这样访问它们:

myObjects[1]@myMethod

然而,当我这样做时,我收到错误: 错误:尝试从没有插槽的基本类(“列表”)的对象获取插槽“myMethod”

当我只有一个对象时,我的代码工作正常,但是在我将它放入列表之后,我不知道如何将其从列表中取出。我得到的R很多时候处理的东西都是“1号列表”,但这对我来说并不适用。有没有办法让对象从列表中取出而不是包含我的对象的大小为1的列表?

1 个答案:

答案 0 :(得分:1)

[运算符为您提供了一个子列表:myObjects[1]是一个长度为一的列表。

[[是获取列表项的运算符:myObjects[[1]]是列表中的第一项。

所以myObjects[[1]]@myMethod应该适用于此。