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
?quantile
>
> 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%
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)) )
> 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.
> Here is a sample dataset:
>
> library(raster)
> r <- raster(ncol=10, nrow=10)
> values(r) <- runif(ncell(r))
0.996683575
> 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
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.