[R] intersecting rows of a matrix

dxc13 dxc13 at health.state.ny.us
Thu Feb 21 02:50:08 CET 2008


Thank you, that also works perfectly!  I am not sure which method works more
efficiently, but they are both instantaneous and give the correct result. 
Thanks

Derek



Henrique Dallazuanna wrote:
> 
> lk.list<-split(lk.mat.test,1:nrow(lk.mat.test))
> names(lk.list)<-NULL
> do.call(intersection,lk.list)
> 
> 2008/2/20, dxc13 <dxc13 at health.state.ny.us>:
>>
>> useR's,
>>
>> First, I would like to say thanks to John Fox for providing this segment
>> of
>> code to perform intersection for multiple sets:
>> intersection <- function(x, y, ...){
>>  	if (missing(...)) intersect(x, y)
>> 	else intersect(x, intersection(y, ...))
>> }
>>
>> I want to execute this function on the rows of a matrix I have:
>> Ik.mat.test <- matrix(c(2,3,6,1,2,6,6,1,2),byrow=T,nrow=3)
>> > Ik.mat.test
>>      [,1] [,2] [,3]
>> [1,]    2    3    6
>> [2,]    1    2    6
>> [3,]    6    1    2
>>
>> I need to find a way to run the intersection function on the rows of this
>> matrix.  The result should be a vector containing 2, 6.
>> This works, but I want to find a way to do this for any size matrix.
>> intersection(Ik.mat.test[1,],Ik.mat.test[2,], Ik.mat.test[3,])
>> So, if the user supplied a matrix with any number of rows, I would like
>> to
>> be able to run this function.  Any ideas?
>> I have tried something like
>> do.call(intersection, list(Ik.mat.test[1,]: Ik.mat.test[3,]))
>> but this doesnt work
>>
>> Thanks in advance.
>> Derek
>>
>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/intersecting-rows-of-a-matrix-tp15601658p15601658.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.
>>
> 
> 
> -- 
> Henrique Dallazuanna
> Curitiba-Paraná-Brasil
> 25° 25' 40" S 49° 16' 22" O
> 
> ______________________________________________
> 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/intersecting-rows-of-a-matrix-tp15601658p15603158.html
Sent from the R help mailing list archive at Nabble.com.



More information about the R-help mailing list