[R] finding max value in a row and reporting colum name
lbertolo
luigi.bertolotti at gmail.com
Mon Aug 2 13:51:24 CEST 2010
pdb wrote:
>
> Hi,
>
> Hopefully someone can point me in the right direction on how I would go
> about solving the following.
>
> I have some data and need to find the column name of the maximum value in
> each row.
>
> This could be the data...
>
>> a <- data.frame(x = rnorm(4), y = rnorm(4), z = rnorm(4))
>> a
> x y z
> 1 1.6534561 0.11523404 0.2261730
> 2 -1.2274320 -0.24096054 1.5096028
> 3 -1.4503096 0.07227427 1.6740867
> 4 0.1867416 1.25318913 -0.7350560
>
> Here is what I need to generate...
>
> 1 x
> 2 z
> 3 z
> 4 y
>
> Any pointers would be appreciated.
>
> Regards,
>
>
>
>
as.data.frame(cbind(row.names(a),apply(a,1,function(x)
names(a)[which(x==max(x))])))
LB
--
View this message in context: http://r.789695.n4.nabble.com/finding-max-value-in-a-row-and-reporting-colum-name-tp2309358p2310192.html
Sent from the R help mailing list archive at Nabble.com.
More information about the R-help
mailing list