次のデータフレームがあります。
> 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))
それを行う正しい方法は何ですか?
必要なベクトルを最初に配置します。
new_dat <- rbind(c(0,10000), dat)
ただし、ここで rbind を使用すると、すべての列が数値であると想定され、列の順序がベクトルと同じであると想定されます。一般に、data.frames を次のようにバインドする必要があります。必要に応じて列の種類を混在させることができます。
rbind(data.frame(V1 = 0, V2 = 10000), dat)
このようなより一般的なデータのマージには、他にも多くのオプションがあります。
これが機能しない理由: 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)