rm(list=ls())
library(raster)
## Loading required package: sp
##contains 'dsd' a spatial polygons data.frame and 'g' a raster brick with 10 layers
load('~/Dropbox/Public/99_raster_bugreport.Rdata') #https://dl.dropboxusercontent.com/u/9577903/99_raster_bugreport.Rdata

dsd
## class       : SpatialPolygonsDataFrame 
## features    : 36 
## extent      : 34.05, 39.7, -4.677, 1.199  (xmin, xmax, ymin, ymax)
## coord. ref. : +proj=longlat +a=6378249.145 +b=6356514.96582849 +no_defs 
## variables   : 4
## names       : Province, District,         Division, uidu 
## min values  :  CENTRAL,  BUNGOMA, ABOTHUGUCHI WEST,    1 
## max values  :  WESTERN,   VIHIGA,            WINAM,   44
g
## class       : RasterBrick 
## dimensions  : 24, 20, 480, 10  (nrow, ncol, ncell, nlayers)
## resolution  : 0.5, 0.5  (x, y)
## extent      : 33, 43, -6, 6  (xmin, xmax, ymin, ymax)
## coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0 
## data source : in memory
## names       : X1999.03.01, X1999.03.02, X1999.03.03, X1999.03.04, X1999.03.05, X1999.03.06, X1999.03.07, X1999.03.08, X1999.03.09, X1999.03.10 
## min values  :       22.48,       22.44,       22.26,       22.23,       22.12,       22.42,       22.28,       22.15,       22.36,       22.33 
## max values  :       41.48,       40.53,       41.55,       42.33,       41.68,       40.79,       41.83,       40.83,       41.13,       42.01
plot(g[[1]])
plot(dsd,add=T)

plot of chunk --Show the data

#test1<-extract(g,dsd,fun=mean,na.rm=T,weights=T)

#produces this error: 
#Error in t(sapply(res, meanfunc)) : 
#  error in evaluating the argument 'x' in selecting a method for function 't': Error in apply(x, 1, function(X) { : dim(X) #must have a positive length
test2<-extract(g,dsd,fun=mean,na.m=T)
head(test2)
##      X1999.03.01 X1999.03.02 X1999.03.03 X1999.03.04 X1999.03.05
## [1,]          NA          NA          NA          NA          NA
## [2,]          NA          NA          NA          NA          NA
## [3,]          NA          NA          NA          NA          NA
## [4,]          NA          NA          NA          NA          NA
## [5,]          NA          NA          NA          NA          NA
## [6,]          NA          NA          NA          NA          NA
##      X1999.03.06 X1999.03.07 X1999.03.08 X1999.03.09 X1999.03.10
## [1,]          NA          NA          NA          NA          NA
## [2,]          NA          NA          NA          NA          NA
## [3,]          NA          NA          NA          NA          NA
## [4,]          NA          NA          NA          NA          NA
## [5,]          NA          NA          NA          NA          NA
## [6,]          NA          NA          NA          NA          NA
summary(test2)
##   X1999.03.01    X1999.03.02    X1999.03.03    X1999.03.04  
##  Min.   :24.5   Min.   :25.2   Min.   :24.7   Min.   :25.5  
##  1st Qu.:29.3   1st Qu.:31.0   1st Qu.:29.6   1st Qu.:30.8  
##  Median :30.3   Median :33.6   Median :31.1   Median :31.9  
##  Mean   :29.9   Mean   :32.8   Mean   :30.4   Mean   :31.8  
##  3rd Qu.:31.9   3rd Qu.:36.1   3rd Qu.:32.6   3rd Qu.:34.4  
##  Max.   :32.8   Max.   :37.0   Max.   :33.5   Max.   :35.8  
##  NA's   :30     NA's   :30     NA's   :30     NA's   :30    
##   X1999.03.05    X1999.03.06    X1999.03.07    X1999.03.08  
##  Min.   :27.4   Min.   :25.4   Min.   :25.9   Min.   :24.1  
##  1st Qu.:31.6   1st Qu.:29.8   1st Qu.:29.5   1st Qu.:28.4  
##  Median :33.3   Median :30.3   Median :30.5   Median :29.7  
##  Mean   :32.6   Mean   :29.7   Mean   :29.9   Mean   :29.2  
##  3rd Qu.:34.7   3rd Qu.:30.6   3rd Qu.:31.3   3rd Qu.:30.8  
##  Max.   :35.4   Max.   :32.0   Max.   :31.7   Max.   :32.5  
##  NA's   :30     NA's   :30     NA's   :30     NA's   :30    
##   X1999.03.09    X1999.03.10  
##  Min.   :26.0   Min.   :25.5  
##  1st Qu.:29.5   1st Qu.:30.7  
##  Median :30.6   Median :31.1  
##  Mean   :30.1   Mean   :31.2  
##  3rd Qu.:31.4   3rd Qu.:33.5  
##  Max.   :32.8   Max.   :34.8  
##  NA's   :30     NA's   :30
glist<-vector(mode='list',length=nlayers(g))

for(i in 1:length(glist)){
  glist[[i]]<-extract(g[[i]],dsd,fun=mean,na.rm=T,weigths=T)
}

sessionInfo()
## R version 3.1.0 (2014-04-10)
## Platform: x86_64-apple-darwin10.8.0 (64-bit)
## 
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
## [1] raster_2.2-31 sp_1.0-15    
## 
## loaded via a namespace (and not attached):
##  [1] digest_0.6.4     evaluate_0.5.5   formatR_0.10     grid_3.1.0      
##  [5] htmltools_0.2.4  knitr_1.6        lattice_0.20-29  rmarkdown_0.2.46
##  [9] stringr_0.6.2    tools_3.1.0