考虑空间自相关的 2 个栅格之间的相关性
Correlation between 2 rasters accounting for spatial autocorrelation
我想测试 2 个空间栅格数据集(完全重叠)之间值的相关性。
我可以这样做:
correlation(getValues(raster1), getValues(raster2))
但是两个栅格数据集都是空间自相关的。
相反,我正在使用:
modified.ttest(getValues(raster1), getValues(raster2), coordinates)
来自 SpatialPack
图书馆。
这是基于 Dutilleul 的检验,该检验根据自相关程度修改有效样本量。
但是,修改后的检验不会改变估计的相关系数,只会改变 p 值。
我还如何更正自相关程度的估计相关系数?
与其说这是一个编程问题,不如说这是一个统计数据。
我认为你做不到 "correct the correlation coefficient for autocorrelation"。相关系数就是这样。它不受 "oversampling" 的影响。
a <- 1:10
b <- c(1:5,1:5)
cor(a,b)
#[1] 0.492366
否 "inflation" 两次使用相同的值时
cor(c(a,a),c(b,b))
#[1] 0.492366
p 值受到影响
t.test(a,b)$p.value
#[1] 0.03554967
t.test(c(a,a), c(b,b))$p.value
#[1] 0.002042504
您可以调整过采样的 p 值。但是,栅格数据的一个问题是您是否真的应该将它们视为样本。这取决于上下文,但栅格数据通常代表整个人口(考虑到细胞是谨慎的,具有一些局部平均值)。如果由于(小)样本量而没有不确定性,则呈现 p 值没有意义。
我想测试 2 个空间栅格数据集(完全重叠)之间值的相关性。
我可以这样做:
correlation(getValues(raster1), getValues(raster2))
但是两个栅格数据集都是空间自相关的。
相反,我正在使用:
modified.ttest(getValues(raster1), getValues(raster2), coordinates)
来自 SpatialPack
图书馆。
这是基于 Dutilleul 的检验,该检验根据自相关程度修改有效样本量。
但是,修改后的检验不会改变估计的相关系数,只会改变 p 值。
我还如何更正自相关程度的估计相关系数?
与其说这是一个编程问题,不如说这是一个统计数据。
我认为你做不到 "correct the correlation coefficient for autocorrelation"。相关系数就是这样。它不受 "oversampling" 的影响。
a <- 1:10
b <- c(1:5,1:5)
cor(a,b)
#[1] 0.492366
否 "inflation" 两次使用相同的值时
cor(c(a,a),c(b,b))
#[1] 0.492366
p 值受到影响
t.test(a,b)$p.value
#[1] 0.03554967
t.test(c(a,a), c(b,b))$p.value
#[1] 0.002042504
您可以调整过采样的 p 值。但是,栅格数据的一个问题是您是否真的应该将它们视为样本。这取决于上下文,但栅格数据通常代表整个人口(考虑到细胞是谨慎的,具有一些局部平均值)。如果由于(小)样本量而没有不确定性,则呈现 p 值没有意义。