Как мне оценить вариограмму для данных о глобусе?

У меня есть данные с соответствующими долготами и широтами. Как мне получить вариограмму для этих данных на основе расстояний между точками большого круга?

Этот простой пример содержит все данные на экваторе:

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 градусов.

2 ответа

Решение

Вы должны использовать полувариограмму от nmle. Это позволяет вам указать матрицу расстояний, которую вы можете легко составить самостоятельно.

Из поста на R-sig-geo (список рассылки, посвященный пространственным данным в R) я, кажется, вспоминаю, что в R нет готовых функций, которые поддерживают большие расстояния:

http://r-sig-geo.2731867.n2.nabble.com/Great-Circle-distances-in-Automap-Gstat-td6863940.html

Я бы предложил проецировать ваши данные, а затем выполнять интерполяцию на проецируемых данных.

Другие вопросы по тегам