2013-07-08 38 views
2

我正在使用R中的生存庫。我在生存對象上使用了殘差(),這很好地輸出了我想要的殘差。R使用行索引合併文件

我的問題是關於R如何處理它的行索引。

下面是一個示例數據集。我的目標是將它們合併在一起。

數據幀:

> 1 - .2 
> 2 - .4 
> 3 - .6 
> 4 - .8 

輸出:

> 1 - .2X 
> 2 - .4X 
> 4 - .8X 

的輸出是輸入的子集(一些數據不能被處理)。我想要的是將這個新列表添加回原始輸入文件來繪製和運行迴歸等。

我不知道如何訪問簡單df [number]命令之外的行索引。我認爲我的做法有點史前;我write.table()將其行號轉換爲實際打印列的對象,然後返回並基於此新鍵合併。我覺得有一個更聰明的方法來寫出並回讀文件。任何建議如何?

我希望這不是重複的,因爲我環顧四周,無法在行索引上找到很好的解釋。

編輯:

我可以添加列或行名稱的數據幀,但如果做一個三維物體(我的輸出文件),這導致NULL值。一維對象只包含我無法訪問的行的子集。

rownames(RES)

NULL

+0

您可以添加一個包含rownames的列:'d $ names < - rownames(d)' –

+0

(編輯過帳以反映評論) – ashah57

回答

1

可以創建一個適當的data.frame對象總分res

res.df <- data.frame(names=names(res), res=res) 

然後使用這個作爲merge的一個輸入。

+0

它就在那裏!這工作完美。 – ashah57

4

不是像上面提出的那樣創建一個新對象,而是直接簡單地使用merge

只要寫:

merge(df1, df2, by.x = 0, by.y = res) 

by.x=0則是指df1的行名。 by.y引用df2的行名稱。合併使用這些鏈接進行。