[R] Easy way to get top 2 items from vector
andrew
andrewjohnroyal at gmail.com
Fri Sep 4 04:23:58 CEST 2009
it is speedier to use sort than a combination of [] and order:
N<- 1000000
x <- runif(N)
> system.time(x[order(x)[c(N-1,N)]])
user system elapsed
1.03 0.00 1.03
> system.time(sort(x)[c(N-1,N)])
user system elapsed
0.28 0.00 0.28
On Sep 4, 11:17 am, Noah Silverman <n... at smartmediacorp.com> wrote:
> Phil,
>
> That's perfect. (For my application, I've never seen a tie. While
> possible, the likelihood is almost none.)
>
> Thanks!
>
> --
> Noah
>
> On 9/3/09 4:29 PM, Phil Spector wrote:
>
>
>
> > Noah -
> > max(x[-which.max(x)] will give you the second largest value,
> > but it doesn't handle ties.
> > x[order(x,decreasing=TRUE)[n]] will give you the nth largest
> > value, with the same caveat regarding ties. For example,
> > x[order(x,decreasing=TRUE)[1:3]] will give you the three largest
> > values.
>
> > - Phil Spector
> > Statistical Computing Facility
> > Department of Statistics
> > UC Berkeley
> > spec... at stat.berkeley.edu
>
> > On Thu, 3 Sep 2009, Noah Silverman wrote:
>
> >> Hi,
>
> >> I use the max function often to find the top value from a matrix or
> >> column of a data.frame.
>
> >> Now I'm looking to find the top 2 (or three) values from my data.
>
> >> I know that I could sort the list and then access the first two
> >> items, but that seems like the "long way". Is there some way to
> >> access "max_2" or similar?
>
> >> Thanks!
>
> >> --
> >> Noah
>
> >> ______________________________________________
> >> R-h... 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.
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-h... at r-project.org mailing listhttps://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guidehttp://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
More information about the R-help
mailing list