我有相关经度和纬度的数据。如何根据点之间的大圆距离获得此数据的变异函数?
这个简单的例子包含了赤道上的所有数据:
require(geoR)
long <- seq(-179, 180)
x <- sin(pi * long / 180) + rnorm(length(long))
V <- variog(data=x, coords=cbind(long, 0))
# variog: computing omnidirectional variogram
plot(V)
第一个和最后一个点实际上只相差1度,但我天真的尝试导致variog
认为它们相隔359度。
答案 0 :(得分:2)
您应该使用Semi-variogram from nmle。它允许您指定一个距离矩阵,您可以自行解决这个问题。
答案 1 :(得分:0)
来自R-sig-geo的帖子(专用于R中的空间数据的邮件列表)我似乎记得在R中没有支持大圆距离的现成功能:
http://r-sig-geo.2731867.n2.nabble.com/Great-Circle-distances-in-Automap-Gstat-td6863940.html
我的建议是投影数据,而不是对投影数据进行插值。