[R] Merge 10 data frames with 3 id columns that are common to all data frames
baptiste auguie
ba208 at exeter.ac.uk
Mon Mar 9 00:56:26 CET 2009
The function expects a list of data.frames as a first argument but you
provided a data.frame instead, the others are interpreted as optional
arguments to merge_recurse(). Try this instead,
> merge_recurse(list(DF1,DF2,DF3,DF4))
var1 x y t u d e f o
1 a 1.39679 2 -1.18377 2 -0.041194 31 -1.05526 11
2 b -0.20453 2 0.22777 2 -0.543270 31 1.45777 11
3 c -0.91446 2 -0.97843 2 -1.279132 31 1.88759 11
4 d -1.18069 2 -0.23963 2 -0.064799 31 -0.85747 11
5 e -1.24802 2 1.43072 2 0.183317 31 2.50352 11
HTH,
baptiste
On 8 Mar 2009, at 23:40, Pele wrote:
>
> I tried using merge_all as shown below but I am getting an error ...
> can
> anyone tell me what I am doing wrong? The result table below is
> what I am
> looking for.
>
> DF1 <- data.frame(var1 = letters[1:5], x = rnorm(5), y =2)
> DF2 <- data.frame(var1 = letters[1:5], t = rnorm(5), u =2)
> DF3 <- data.frame(var1 = letters[1:5], d = rnorm(5), e =31)
> DF4 <- data.frame(var1 = letters[1:5], f = rnorm(5), o =11)
>
> DF_all <- merge_all(DF1, DF2, DF3, DF4, by="var1" )
>
> Error in fix.by(by.x, x) :
> 'by' must specify column(s) as numbers, names or logical
>
> Results I would like
> var1 x y d e
> t u x
> a -1.725155 2 -0.48097 31
> 0.032968 2 -1.725155
> b 0.799983 2 2.32965 31
> -0.385364 2 0.799983
> c -1.387224 2 0.61761 31
> 0.977404 2 -1.387224
> d 0.645946 2 0.46152 31
> 1.334591 2 0.645946
> e 0.058783 2 -0.25312 31
> 0.631676 2 0.058783
>
>
>
>
>
>
> baptiste auguie-2 wrote:
>>
>> Hi,
>>
>> Try this:
>>
>>> DF1 <- data.frame(var1 = letters[1:5], x = rnorm(5), y =2)
>>> DF2 <- data.frame(var1 = letters[3:7], x = rnorm(5), y=3)
>>> DF3 <- data.frame(var1 = letters[6:10], x = rnorm(5), y=0)
>>> # ... DF10 if you wish
>>>
>>> ( result <- merge_all(list(DF1, DF2, DF3) ))
>>>
>>> save( result, file ="merged.rda")
>>
>> I didn't know of this function, thanks. Similar solutions using base
>> functions were proposed recently on
>> http://wiki.r-project.org/rwiki/doku.php?id=tips:data-frames:merge
>> and i've now added this for reference.
>>
>> baptiste
>>
>> On 8 Mar 2009, at 20:23, Pele wrote:
>>
>>>
>>> Hi R users,
>>>
>>> Can anyone share some example code using merge_all (from the reshape
>>> package) to merge 10 data frames into 1 file.
>>>
>>> Thanks in advance for any help!
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Merge-10-data-frames-with-3-id-columns-that-are-common-to-all-data-frames-tp22402493p22402493.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.
>>
>> _____________________________
>>
>> Baptiste Auguié
>>
>> School of Physics
>> University of Exeter
>> Stocker Road,
>> Exeter, Devon,
>> EX4 4QL, UK
>>
>> Phone: +44 1392 264187
>>
>> http://newton.ex.ac.uk/research/emag
>>
>> ______________________________________________
>> 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.
>>
>>
>
> --
> View this message in context: http://www.nabble.com/Merge-10-data-frames-with-3-id-columns-that-are-common-to-all-data-frames-tp22402493p22404595.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.
_____________________________
Baptiste Auguié
School of Physics
University of Exeter
Stocker Road,
Exeter, Devon,
EX4 4QL, UK
Phone: +44 1392 264187
http://newton.ex.ac.uk/research/emag
More information about the R-help
mailing list