R有点新,我在访问列表中的对象时遇到了一些麻烦。
我在这样的列表中创建我的对象:
myObjects <- vector("list", P)
for(i in 1:10){
myObjects[[i]] <- new.myObject()
}
然后我想访问我在代码中创建的一些方法,所以我必须像这样访问它们:
myObjects[1]@myMethod
然而,当我这样做时,我收到错误: 错误:尝试从没有插槽的基本类(“列表”)的对象获取插槽“myMethod”
当我只有一个对象时,我的代码工作正常,但是在我将它放入列表之后,我不知道如何将其从列表中取出。我得到的R很多时候处理的东西都是“1号列表”,但这对我来说并不适用。有没有办法让对象从列表中取出而不是包含我的对象的大小为1的列表?
答案 0 :(得分:1)
[
运算符为您提供了一个子列表:myObjects[1]
是一个长度为一的列表。
[[
是获取列表项的运算符:myObjects[[1]]
是列表中的第一项。
所以myObjects[[1]]@myMethod
应该适用于此。