[R] how to add a column from another dataset with "merge"
arun
smartpink111 at yahoo.com
Fri Dec 7 16:00:54 CET 2012
Hi,
You could use sort=FALSE in ?merge()
d1<-data.frame(id=c(9,8,6,5,4,3,1))
d2<-data.frame(id=c(9,8,6),age=c(46,56,52))
d<-merge(d1,d2,all.x=TRUE,sort=FALSE)
#or
library(plyr)
join(d1,d2,by="id",type="full")
# id age
#1 9 46
#2 8 56
#3 6 52
#4 5 NA
#5 4 NA
#6 3 NA
#7 1 NA
A.K.
----- Original Message -----
From: Pete Brecknock <Peter.Brecknock at bp.com>
To: r-help at r-project.org
Cc:
Sent: Friday, December 7, 2012 9:12 AM
Subject: Re: [R] how to add a column from another dataset with "merge"
kiotoqq wrote
> I want to add a shorter column to my dataset with the function "merge",
> it
> should be filled with NAs wo be as long as the other colums, like this:
>
> id age
> 9 46
> 8 56
> 6 52
> 5 NA
> 4 NA
> 3 NA
> 1 NA
>
> i did this:
> pa1 <- merge(pa1, an1, by="mergeid")
>
> and it says "'by' must specify uniquely valid column(s)"
how about ...
#Data
d1<-data.frame(id=c(9,8,6,4,4,3,1))
d2<-data.frame(id=c(9,8,6),age=c(46,56,52))
# Left Merge
d<-merge(d1,d2,all.x=TRUE)
# Reorder
d[order(d$id,decreasing=TRUE),]
HTH
Pete
--
View this message in context: http://r.789695.n4.nabble.com/how-to-add-a-column-from-another-dataset-with-merge-tp4652482p4652486.html
Sent from the R help mailing list archive at Nabble.com.
______________________________________________
R-help at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
More information about the R-help
mailing list