2017-04-13 4 views
0

Je veux savoir comment je peux utiliser r rastercorLocal fonction pour une méthode similaire pour analyser les corrélations lorsque j'ai plus de two couches. ppcor package a pcor fonction qui peut gérer cela, mais je suis intéressé de savoir comment je peux implémenter cela en utilisant raster package. Voici un exemple, mais il ne fonctionne évidemment qu'avec two layers et ne vous permet pas d'utiliser des corrélations partielles.raster corLocal avec plus de deux couches

library (raster) 
bio <- crop(raster::getData('worldclim', var='bio', res=10),extent(100, 120, 30, 40)) 
biocor <- corLocal(bio[[1]],bio[[2]], method='kendall',test=F, exact=FALSE) 

Répondre

0

Dans mon cas, j'utiliser la fonction corLocal pour trouver le r pixellisé et p-valeur

D'abord, j'empilé mes couches raster

Stack1 <- stack (x1,x2,x3,x4, y1,y2,y3,y4) 

Ensuite,

Corr_coff <- corLocal(Stack1[[5:8]], Stack1[[1:4]], test=TRUE) # test=T; P-value will be returned 
#TESTING!!!!!! Pearson's r and p-value map MUST be showed. 

plot(Corr_coff) 

Pour l'analyse de corrélation partielle basée sur les pixels, je pense que vous pouvez faire de la même manière que ci-dessus.