Re: [R] Sorting values within a raster

From: David Winsemius <dwinsemius_at_comcast.net>
Date: Thu, 21 Apr 2011 16:26:54 -0400

On Apr 21, 2011, at 3:23 PM, Sara Maxwell wrote:

> I am working with a raster and want to take values assigned to each
> cell and sort them from largest to smallest, then cummulatively sum
> them together (in order from largest to smallest). I'll then be
> coding the individual cells such that the top 10% of the largest
> cell values can be visualize with one color, the next 10% with
> another and so on.
>
> I have tried a number of schemes but am having trouble figuring out
> how to chose the maximum value, code it and re-search the raster for
> the next highest value without replacement. I am assuming this
> requires a loop, unless there is a function that will do this
> automatically.

?quantile

>
> Here is a sample dataset:
>
> library(raster)
> r <- raster(ncol=10, nrow=10)
> values(r) <- runif(ncell(r))

 > quantile(values(r), prob=seq(0,1,by=0.1))

          0% 10% 20% 30% 40% 0.004888148 0.106378528 0.217009097 0.307201289 0.364990984

         50% 60% 70% 80% 90% 0.512523817 0.593382875 0.667916094 0.722919876 0.835839832

        100%
0.996683575

You will also need findInterval()

If you want to create a factor that will assign your colors. perhaps this could be used to index a suitable color vector:

fac <- findInterval(values(r), quantile(values(r), prob=seq(0,1,by=0.1)) )
 > fac

   [1]  6 10  1 10  7  7  8 10  2  9  9  1  6  2  9  1  9  4  2  2
  [21]  3  4  8  9  7  1  9  2 10  5  4  9  8  1  8 10  1 11  3  5
  [41]  5  6  6  5  6  7  4  7  5  3  8  6  3  4 10  4  7  7  8  9
  [61] 10  4  1  8  8  8  3  7  5  1  9  5  2  7  2 10  3  8  4  9
  [81]  6  6  2  6 10  5  5  4  3  6  2  2  1  3  3  3  4  7  1  5

David Winsemius, MD
West Hartford, CT



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. Received on Thu 21 Apr 2011 - 20:28:27 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Fri 22 Apr 2011 - 02:40:32 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive