[R] min rows multiplication by the max rows
Jeff Newmiller
jdnewm|| @end|ng |rom dcn@d@v|@@c@@u@
Sat May 23 16:54:08 CEST 2020
Please post using plain text format... otherwise what we see can be corrupted as compared to what you saw.
The obvious solution is:
apply( M, 1, min ) * apply( N, 1, max )
but Google sez there is an optimized version useful with large matrices:
library( Rfast )
rowMins( M ) * rowMins( N )
(untested)
On May 23, 2020 7:30:48 AM PDT, Vahid Borji <vahid.borji65 using gmail.com> wrote:
>Hi my R friends,
>
>I have two matrices as follows:
>
>M<-matrix(c(1,4,1,3,1,4,2,3,1,2,1,2),3)
>
>1 3 2 2
>4 1 3 1
>1 4 1 2
>
>N<-matrix(c(1,1,2,2,3,4,-2,2,1,4,3,-1),3)
>
>1 2 -2 4
>1 3 2 3
>2 4 1 -1
>
>I want to find a vector which is a matrix 1*3 and each of its elements
>is
>the multiplication of min element of each row of M by the max element
>of
>the corresponding row of N (for example, the first element of the
>vector is
>the min element of the first row of matrix M, which is 1, multiply by
>the
>max element of the first row of matrix N, which is 4, and so the first
>element of the vector is 1*4 which is 4).
>The final answer is: (1*4, 1*3,1*4)=(4,3,4)
>
>To find this vector (or matrix) I have written the below code:
>c(min(M[1,])*max(N[1,]),min(M[2,])*max(N[2,]),min(M[3,])*max(N[3,]))
>But it is so long. could anyone writes a shorter (or simpler, or
>easier)
>code?
>
> [[alternative HTML version deleted]]
>
>______________________________________________
>R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
>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.
--
Sent from my phone. Please excuse my brevity.
More information about the R-help
mailing list