Re: [R] how to join two arrays using their column names intersection

From: Federico Abascal <fabascal_at_cnb.uam.es>
Date: Tue 30 Jan 2007 - 11:56:13 GMT

I have found something that partially works. Just to illustrate what am I looking for:

for(a in colnames(ar1)) {if(a %in% colnames(ar2)) { cat(a, "\t", ar1[,a],"\t",ar2[,a],"\n")}}

A        1 2 3 4         5 6 7 8
B        5 6 7 8         13 14 15 16
E        13 14 15 16     9 10 11 12

I think I can use something similar to obtain the desired results, but I am curious to know if there is a better way to do it. Federico

Federico Abascal wrote:
> Dear all,
>
> I have a problem that may be someone of you can help. I am a newbie and
> do not find how to do it in manuals.
>
> I have two arrays, for example:
>
> ar1 <- array(data=c(1:16),dim=c(4,4))
> ar2 <- array(data=c(1:16),dim=c(4,4))
> colnames(ar1)<-c("A","B","D","E")
> colnames(ar2)<-c("C","A","E","B")
>
>
>> ar1
>>
> A B D E
> [1,] 1 5 9 13
> [2,] 2 6 10 14
> [3,] 3 7 11 15
> [4,] 4 8 12 16
>
>> ar2
>>
> C A E B
> [1,] 1 5 9 13
> [2,] 2 6 10 14
> [3,] 3 7 11 15
> [4,] 4 8 12 16
>
>
> I would like to join both arrays only for the columns present in both
> ar1 and ar2 (the intersection). I would like to obtain this:
> A B E
> [1,] 1 5 13
> [2,] 2 6 14
> [3,] 3 7 15
> [4,] 4 8 16
> [5,] 5 13 9
> [6,] 6 14 10
> [7,] 7 15 11
> [8,] 8 16 12
>
> (rows 5-8 correspond to ar2)
>
> I have tried several things but I am unable to accomplish it. Any
> experienced user could give me some advice, please?
>
> I have another question: how can I sort the columns of an array
> according to its column names (for ar2, change CAEB to ABCE)?
>
> Thanks in advance!
> Federico
>
> ______________________________________________
> R-help@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
> and provide commented, minimal, self-contained, reproducible code.
>
>

        [[alternative HTML version deleted]]



R-help@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 and provide commented, minimal, self-contained, reproducible code. Received on Tue Jan 30 23:16:52 2007

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Tue 30 Jan 2007 - 13:30:26 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.