[R] Combining CSV data
arun
smartpink111 at yahoo.com
Tue Jun 11 00:41:58 CEST 2013
Hi,
Try this:
dat1<-read.table(text="
Row_ID_CR, Data1, Data2, Data3
1, aa, bb, cc
2, dd, ee, ff
",sep=",",header=TRUE,stringsAsFactors=FALSE)
dat2<-read.table(text="
Row_ID_N, Src_Row_ID, DataN1
1a, 1, This is comment 1
2a, 1, This is comment 2
3a, 2, This is comment 1
4a, 1, This is comment 3
",sep=",",header=TRUE,stringsAsFactors=FALSE)
library(stringr)
dat2$DataN1<-str_trim(dat2$DataN1)
res<- merge(dat1,dat2,by.x=1,by.y=2)
res1<-res[,-5]
library(plyr)
res2<-ddply(res1,.(Row_ID_CR,Data1,Data2,Data3),summarize, DataN1=list(DataN1))
res2
# Row_ID_CR Data1 Data2 Data3
#1 1 aa bb cc
#2 2 dd ee ff
# DataN1
#1 This is comment 1, This is comment 2, This is comment 3
#2 This is comment 1
res3<-data.frame(res2[,-5],t(apply(do.call(rbind,res2[,5]),1,function(x) {x[duplicated(x)]<-NA;x})))
colnames(res3)[grep("X",colnames(res3))]<- paste0("DataComment",gsub("[[:alpha:]]","",colnames(res3)[grep("X",colnames(res3))]))
res3
# Row_ID_CR Data1 Data2 Data3 DataComment1
#1 1 aa bb cc This is comment 1
#2 2 dd ee ff This is comment 1
# DataComment2 DataComment3
#1 This is comment 2 This is comment 3
#2 <NA> <NA>
A.K.
----- Original Message -----
From: Shreya Rawal <rawal.shreya at gmail.com>
To: r-help at r-project.org
Cc:
Sent: Monday, June 10, 2013 4:38 PM
Subject: [R] Combining CSV data
Hello R community,
I am trying to combine two CSV files that look like this:
File A
Row_ID_CR, Data1, Data2, Data3
1, aa, bb, cc
2, dd, ee, ff
File B
Row_ID_N, Src_Row_ID, DataN1
1a, 1, This is comment 1
2a, 1, This is comment 2
3a, 2, This is comment 1
4a, 1, This is comment 3
And the output I am looking for is, comparing the values of Row_ID_CR and
Src_Row_ID
Output
ROW_ID_CR, Data1, Data2, Data3, DataComment1,
DataComment2, DataComment3
1, aa, bb, cc, This is
comment1, This is comment2, This is comment 3
2, dd, ee, ff, This is
comment1
I am a novice R user, I am able to replicate a left join but I need a bit
more in the final result.
Thanks!!
[[alternative HTML version deleted]]
______________________________________________
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