1
我對R非常陌生,在引用對象的數據成員和屬性時不確定正確的語言。我在Java中有一個面向對象的編程語言背景,所以我可能指的是Java中的數據成員/屬性。無論如何,假設我具有矩陣matClust1
和我也做了以下內容:R數據成員和屬性
ids = vector()
for(i in 1:size) #size is the number of rows in matClust1
{
ids = c(ids, "exp")
}
attr(matClust1, "clustID") <- ids
我認爲上述的作爲matClust1
設置一個屬性/數據成員的每一行向量的至"exp"
。這是因爲ids
被創建爲具有與matClust1
中的行一樣多的條目。所以,我希望能夠通過如下代碼訪問此屬性/數據成員:
matClust1.clustID[2] #get the clustID of row vector in matClust1
顯然,.
運營商不這樣做也不對$
操作。
- 如何在R中實現此功能?
編輯:我已經屬性爲rownames
設置和我所真正需要的是另一個變量一樣rownames
工作。
除了特定的解決方案,這可能涉及使用'rownames()',你應該_definitely_閱讀[R地獄](http://www.burns-stat.com/pages/Tutor/ R_inferno.pdf),特別是Circle 2 + 3,如果你來自Java背景。它會爲你節省很多痛苦。 – joran
只是一個快速提示 - '.'不是'R'中的操作符。這只是另一個角色。當你看到'.'想'_'(下劃線) –
@RicardoSaporta:這只是部分正確的。事實僅限於數據對象命名。使用S3調度系統的功能命名依賴於「。」。具有特殊意義。但是對於OP來說,這是一種功能調度的方法,它不會很好地轉化爲Java經過訓練的思維過程。 –