[R-sig-Geo] How to calculate decadal average and percent change in raster stacks?

Thiago V. dos Santos thi_veloso at yahoo.com.br
Tue Dec 1 21:24:46 CET 2015


Oh, I should have said "10-year period", and not "9-year period".

This is because the first year of the decade should be accounted for, i.e. 2010 (including) to 2019.
 Greetings,
 -- Thiago V. dos Santos

PhD student
Land and Atmospheric Science
University of Minnesota



On Tuesday, December 1, 2015 2:04 PM, Thiago V. dos Santos <thi_veloso at yahoo.com.br> wrote:
Thanks you all for the responses. Each of them provided very good tips on how to address my problem.

Loïc, answering your question: the percent change would be within the 9-year period of each decade. Thanks for your response, it was really concise.
Greetings,
-- Thiago V. dos Santos

PhD student
Land and Atmospheric Science
University of Minnesota




On Tuesday, December 1, 2015 4:40 AM, Loïc Dutrieux <loic.dutrieux at wur.nl> wrote:
Hi Thiago,

This should work for aggregating to decades.

library(raster)
library(lubridate)

# Create the date sequence
idx <- seq(as.Date("2010/1/1"), as.Date("2099/12/31"), by = "year")

# Create raster stack and apply the date
r <- raster(ncol=360, nrow=180)
s <- stack(lapply(1:length(idx), function(x) setValues(r, runif(ncell(r)))))
s <- setZ(s, idx)

# Aggregate to decades
zApply(s, by = function(x) year(x) %/% 10 * 10, fun = mean)


By calculate percent change for each decade, do you mean between decades 
or within?

Cheers,
Loïc



On 12/01/2015 09:14 AM, Thiago V. dos Santos wrote:
> Dear all,
>
> I am working with yearly climate projections of rainfall that cover the period from 2010 to 2099:
>
> library(raster)
>
> # Create the date sequence
> idx <- seq(as.Date("2010/1/1"), as.Date("2099/12/31"), by = "year")
>
> # Create raster stack and apply the date
> r <- raster(ncol=360, nrow=180)
> s <- stack(lapply(1:length(idx), function(x) setValues(r, runif(ncell(r)))))
> s <- setZ(s, idx)
> s
>
> Given this raster stack, how can I calculate the average values per decade and percent change for each decade?
>
> I define decades here as 2010-2019, 2020-2029, 2030-2039 and so on until 2090-2099.
>
> I guess the real issue here is how to "split" a raster stack in decades. Any ideas?
> Thanks,
>   -- Thiago V. dos Santos
>
> PhD student
> Land and Atmospheric Science
> University of Minnesota
>
> _______________________________________________
> R-sig-Geo mailing list
> R-sig-Geo at r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-geo

>

_______________________________________________
R-sig-Geo mailing list
R-sig-Geo at r-project.org
https://stat.ethz.ch/mailman/listinfo/r-sig-geo



More information about the R-sig-Geo mailing list