R有點新,我在訪問列表中的對象時遇到了一些麻煩。從列表中訪問對象方法
創建我的列表中的對象是這樣的:
myObjects <- vector("list", P)
for(i in 1:10){
myObjects[[i]] <- new.myObject()
}
然後我想訪問一些方法,我在代碼中創建的,所以我就來訪問它們像這樣:
myObjects[1]@myMethod
然而,當我這樣做,我得到的錯誤: 錯誤:試圖從基類(「名單」)的對象獲取插槽「myMethod的」無縫隙
當我剛剛有1個OBJE ct我的代碼工作正常,但是在將它放入列表後,我不知道如何將它從列表中取出。我知道R在很多時候都把事物當作'大小爲1的列表'來處理,但它在這裏並不適合我。有沒有辦法讓對象脫離列表而不是包含我的對象的大小爲1的列表?
看一看哈德利的材料在這裏子集化http://adv-r.had.co.nz/Subsetting.html – sckott
您沒有顯示)的任何使用setClass的'('這將有望爲建設S4 -目的。與某些語言不同,沒有內置的「新」操作。你不能僅僅假設R就像你最喜歡的OOP語言一樣。 –
@DWin:我在其他地方都有這個設置。正如我所提到的,我的代碼使用1個對象,但不在列表中。 – Fozefy