我需要在从WordClim数据库中提取的非洲大陆的19个栅格图层之间完成成对的Pearson相关。我想检查哪些变量层与我的模型更相关/重要。为此,我尝试使用Raster包中的layerStats函数,但在执行后我的输出不包含数值,所有行和列都显示了NAs值。 以下是我的剧本。
#Loading raster files from WorldClim database
rastFiles<- list.files(pattern="bil")
a<-stack(rastFiles)
# Adjusting for African Continent
newext<-c(-20, 55, -35, 45)
Africa<-crop(a,newext)
Africa
#Correlation
cor<-layerStats(Africa,'pearson')
答案 0 :(得分:5)
在r中,只需使用下面的代码,确保你有na.rm = T来处理跨层的NA:
library(raster)
jnk=layerStats(raster_stack, 'pearson', na.rm=T)
corr_matrix=jnk$'pearson correlation coefficient'