[R] MAximum location
Milan Bouchet-Valat
nalimilan at club.fr
Fri Dec 16 00:13:49 CET 2011
Le jeudi 15 décembre 2011 à 21:15 +0100, Trying To learn again a écrit :
> Hi all,
>
> I have a matrix
> a<-c(2,3,4,Inf)
>
> > b<-as.matrix(a)
> [,1]
> [1,] 2
> [2,] 3
> [3,] 4
> [4,] Inf
>
> > range(b, finite=TRUE)[2] (this is the maximum)
> [1] 4
>
> There is a pre-def function to extract the location (in terms of rows) of
> the value in the matrix.
>
> In my example would be
>
> 3 (max is in the third row)
>
> The maximum is in the position (row) 3.
Maybe using this:
> row(b)[b == range(b, finite=TRUE)[2]]
[1] 3
> col(b)[b == range(b, finite=TRUE)[2]]
[1] 1
Not very short, since in you case involving Inf you cannot use
which.max() directly, but it works.
Regards
More information about the R-help
mailing list