Muhammad Subianto
2005-Apr-27 13:48 UTC
[R] How to add some of data in the first place dataset
Dear R-help,
First I apologize if my question is quite simple.
I need add some of data in the first place my dataset, how can I do that.
I have tried with rbind, but I did not succes.
0.1 3.6 0.4 0.9 rose
4.1 4.0 1.2 1.2 rose
4.4 3.2 1.9 0.5 rose
4.6 1.1 1.1 0.2 rose
For example,
> data(iris)
> iris[1:10,]
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 5.0 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa
7 4.6 3.4 1.4 0.3 setosa
8 5.0 3.4 1.5 0.2 setosa
9 4.4 2.9 1.4 0.2 setosa
10 4.9 3.1 1.5 0.1 setosa
>
The result something like this,
0.1 3.6 0.4 0.9 rose
4.1 4.0 1.2 1.2 rose
4.4 3.2 1.9 0.5 rose
4.6 1.1 1.1 0.2 rose
5.1 3.5 1.4 0.2 setosa
4.9 3.0 1.4 0.2 setosa
4.7 3.2 1.3 0.2 setosa
4.6 3.1 1.5 0.2 setosa
5.0 3.6 1.4 0.2 setosa
5.4 3.9 1.7 0.4 setosa
4.6 3.4 1.4 0.3 setosa
5.0 3.4 1.5 0.2 setosa
4.4 2.9 1.4 0.2 setosa
4.9 3.1 1.5 0.1 setosa
Sincerely,
Muhammad Subianto
Try this: x<- matrix(1:12, nrow = 4, byrow = T) y <- matrix (13:24, nrow=4, by.row=T) To add the rows of y before the rows of x: rbind(y,x) -- Tyler Smith
Henric Nilsson
2005-Apr-27 14:21 UTC
[R] How to add some of data in the first place dataset
Muhammad Subianto said the following on 2005-04-27 15:48:> Dear R-help, > First I apologize if my question is quite simple. > I need add some of data in the first place my dataset, how can I do that. > I have tried with rbind, but I did not succes.Can you send a reproducible example where rbind didn't succeed?> 0.1 3.6 0.4 0.9 rose > 4.1 4.0 1.2 1.2 rose > 4.4 3.2 1.9 0.5 rose > 4.6 1.1 1.1 0.2 rose > For example, > > data(iris) > > iris[1:10,] > Sepal.Length Sepal.Width Petal.Length Petal.Width Species > 1 5.1 3.5 1.4 0.2 setosa > 2 4.9 3.0 1.4 0.2 setosa > 3 4.7 3.2 1.3 0.2 setosa > 4 4.6 3.1 1.5 0.2 setosa > 5 5.0 3.6 1.4 0.2 setosa > 6 5.4 3.9 1.7 0.4 setosa > 7 4.6 3.4 1.4 0.3 setosa > 8 5.0 3.4 1.5 0.2 setosa > 9 4.4 2.9 1.4 0.2 setosa > 10 4.9 3.1 1.5 0.1 setosaAssume that you have the new data in a `data.frame', e.g. > (new.data <- read.table("clipboard", header = FALSE, col.names = c("Sepal.Length", "Sepal.Width", "Petal.Length", "Petal.Width", "Species"))) Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 0.1 3.6 0.4 0.9 rose 2 4.1 4.0 1.2 1.2 rose 3 4.4 3.2 1.9 0.5 rose 4 4.6 1.1 1.1 0.2 rose Then, add.data <- rbind(new.data, iris) will do the trick. Confirm this by > add.data[1:10, ] Sepal.Length Sepal.Width Petal.Length Petal.Width Species 1 0.1 3.6 0.4 0.9 rose 2 4.1 4.0 1.2 1.2 rose 3 4.4 3.2 1.9 0.5 rose 4 4.6 1.1 1.1 0.2 rose 151 5.1 3.5 1.4 0.2 setosa 210 4.9 3.0 1.4 0.2 setosa 310 4.7 3.2 1.3 0.2 setosa 410 4.6 3.1 1.5 0.2 setosa 5 5.0 3.6 1.4 0.2 setosa 6 5.4 3.9 1.7 0.4 setosa HTH, Henric> > > The result something like this, > > 0.1 3.6 0.4 0.9 rose > 4.1 4.0 1.2 1.2 rose > 4.4 3.2 1.9 0.5 rose > 4.6 1.1 1.1 0.2 rose > 5.1 3.5 1.4 0.2 setosa > 4.9 3.0 1.4 0.2 setosa > 4.7 3.2 1.3 0.2 setosa > 4.6 3.1 1.5 0.2 setosa > 5.0 3.6 1.4 0.2 setosa > 5.4 3.9 1.7 0.4 setosa > 4.6 3.4 1.4 0.3 setosa > 5.0 3.4 1.5 0.2 setosa > 4.4 2.9 1.4 0.2 setosa > 4.9 3.1 1.5 0.1 setosa
Arne Henningsen
2005-Apr-27 14:28 UTC
[R] How to add some of data in the first place dataset
If you want to add rows to a data frame using rbind, your additional rows must
be in a data frame with the same (column) names.
R> data( iris )
R> a <- data.frame( Sepal.Length=c(1:4), Sepal.Width=c(2:5),
Petal.Length=c(3:6), Petal.Width=c(4:7), Species=rep("rosa",4))
R> b <- iris[1:10,]
R> rbind(a,b)
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1 1.0 2.0 3.0 4.0 rosa
2 2.0 3.0 4.0 5.0 rosa
3 3.0 4.0 5.0 6.0 rosa
4 4.0 5.0 6.0 7.0 rosa
11 5.1 3.5 1.4 0.2 setosa
21 4.9 3.0 1.4 0.2 setosa
31 4.7 3.2 1.3 0.2 setosa
41 4.6 3.1 1.5 0.2 setosa
5 5.0 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa
7 4.6 3.4 1.4 0.3 setosa
8 5.0 3.4 1.5 0.2 setosa
9 4.4 2.9 1.4 0.2 setosa
10 4.9 3.1 1.5 0.1 setosa
Arne
On Wednesday 27 April 2005 15:48, Muhammad Subianto
wrote:> Dear R-help,
> First I apologize if my question is quite simple.
> I need add some of data in the first place my dataset, how can I do that.
> I have tried with rbind, but I did not succes.
> 0.1 3.6 0.4 0.9 rose
> 4.1 4.0 1.2 1.2 rose
> 4.4 3.2 1.9 0.5 rose
> 4.6 1.1 1.1 0.2 rose
> For example,
>
> > data(iris)
> > iris[1:10,]
>
> Sepal.Length Sepal.Width Petal.Length Petal.Width Species
> 1 5.1 3.5 1.4 0.2 setosa
> 2 4.9 3.0 1.4 0.2 setosa
> 3 4.7 3.2 1.3 0.2 setosa
> 4 4.6 3.1 1.5 0.2 setosa
> 5 5.0 3.6 1.4 0.2 setosa
> 6 5.4 3.9 1.7 0.4 setosa
> 7 4.6 3.4 1.4 0.3 setosa
> 8 5.0 3.4 1.5 0.2 setosa
> 9 4.4 2.9 1.4 0.2 setosa
> 10 4.9 3.1 1.5 0.1 setosa
>
> The result something like this,
>
> 0.1 3.6 0.4 0.9 rose
> 4.1 4.0 1.2 1.2 rose
> 4.4 3.2 1.9 0.5 rose
> 4.6 1.1 1.1 0.2 rose
> 5.1 3.5 1.4 0.2 setosa
> 4.9 3.0 1.4 0.2 setosa
> 4.7 3.2 1.3 0.2 setosa
> 4.6 3.1 1.5 0.2 setosa
> 5.0 3.6 1.4 0.2 setosa
> 5.4 3.9 1.7 0.4 setosa
> 4.6 3.4 1.4 0.3 setosa
> 5.0 3.4 1.5 0.2 setosa
> 4.4 2.9 1.4 0.2 setosa
> 4.9 3.1 1.5 0.1 setosa
>
> Sincerely,
> Muhammad Subianto
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide!
> http://www.R-project.org/posting-guide.html
--
Arne Henningsen
Department of Agricultural Economics
University of Kiel
Olshausenstr. 40
D-24098 Kiel (Germany)
Tel: +49-431-880 4445
Fax: +49-431-880 1397
ahenningsen at agric-econ.uni-kiel.de
http://www.uni-kiel.de/agrarpol/ahenningsen/