Je tente de calculer une fonction d'écart-type simple à partir d'un objet brique raster à l'aide de la fonction calc() du package raster. J'ai des valeurs manquantes et je veux qu'elles soient exclues. Je pense que je devrais être en mesure de les exclure en incluant le na.rm = argument de vrai, mais quand je le fais, je reçois une erreur:La fonction d'écart-type déclenche une erreur lorsque na.rm = TRUE lors de l'utilisation de calc() dans le package raster
Error in .calcTest(x[1:5], fun, na.rm, forcefun, forceapply) :
cannot use this function. Perhaps add '...' or 'na.rm' to the function arguments?
Ci-dessous j'ai créé un exemple trivial de démontrer (note: Je l'ai écrit ma propre fonction de l'écart-type pour une population que la fonction intégrée SD est l'écart type de l'échantillon. Cependant, il jette la même erreur)
r <- raster(nrow=10, ncol=10)
r1 <- setValues(r, 5)
r2 <- setValues(r, 10)
r3 <- setValues(r, 11)
r4 <- setValues(r, NA)
s <- stack(r1, r2,r3,r4)
pop.sd=function(x)(sqrt(var(x)*(length(x)-1)/length(x)))
stdv<-calc(s, fun=pop.sd, na.rm=T)
une couche de trame complète de 2,624 doit être retourné. Des pensées?
Ca l'a fait, merci! – jlab