我使用的功能,autocov_dist
从spdep
包来估计aucovariate。我使用反距离作为权重。当我在数据上对其进行测试时,收到以下错误消息:
Error in autocov_dist(Var, xy, nbs = 100, style = "B", type = "inverse") : is.vector(z) is not TRUE
这是一个可重现的示例(我在坐标中显示较大的值,因为在我的真实数据中,空间坐标以UTM表示):
library(spdep)
set.seed <- 123
xy<- as.data.frame(cbind(rnorm(1000,100000, 100), (rnorm(1000,500000, 100))))
Var <- rnorm(1000,2, 1)
autocov <- autocov_dist(Var, xy, nbs=100, style="B",type="inverse")
另外,什么是相邻半径的确切定义(nbs
函数中的参数),因为在函数文档中找不到清晰的定义。
要设置种子,您必须使用set.seed(number)
。
xy
需要是一个矩阵,您已经将其转换为数据框。尝试:
library(spdep)
set.seed(123)
xy<- cbind(rnorm(1000,100000, 100), (rnorm(1000,500000, 100)))
Var <- rnorm(1000,2, 1)
autocov <- autocov_dist(Var, xy, nbs=100, style="B",type="inverse")
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句