2012-05-08 48 views
6

,我有以下的數據幀:如何添加在最上層的數據幀R的排

> dat 

    V1 V2 
1 1 6868 
2 2 954 
3 3 88 

我想要做的是增加對當前產生的頂部另一行:

V1 V2 
1 0 10000 
2 1 6868 
3 2 954 
4 3 88 

爲什麼這不起作用:

new_dat <- rbind(dat,c(0,10000)) 

什麼是做正確的方法是什麼?

回答

12

把你想在上面第一載體:

new_dat <- rbind(c(0,10000), dat) 

但是,使用rbind這裏假定所有列是數字的,而且我們假定你是列訂單一樣矢量。一般來說,你應該綁定在一起data.frames,這樣的事情,在這裏您可以根據需要混用列類型:

rbind(data.frame(V1 = 0, V2 = 10000), dat) 

有像這樣的數據的更全面合併許多其他的選擇。

8

爲什麼不這項工作:new_dat < - rbind(DAT,C(0,10000))

這是在錯誤的順序,只要看看輸出:

R> rbind(dat, c(0, 1000)) 
    V1 V2 
1 1 6868 
2 2 954 
3 3 88 
4 0 1000 

相反,交換的參數的順序:

rbind(c(0,10000), dat) 

得到你想要的東西。或者,你可以有

rbind(data.frame(V1 = 0, V2 = 10000), dat)