Ошибка в пространственной модели панели в R с использованием spml - PullRequest
0 голосов
/ 07 июня 2019

Я пытаюсь подогнать пространственную модель панели в R, используя пакет spml.Сначала я определяю весовую матрицу NxN следующим образом:

neib <- dnearneigh(coordinates(coord), 0, 50, longlat = TRUE)
dlist <- nbdists(neib, coordinates(coord))
idlist <- lapply(dlist, function(x) 1/x)
w50 <- nb2listw(neib,zero.policy=TRUE, glist=idlist, style="W")

Таким образом, я определяю два наблюдения, которые должны быть соседями, если они находятся на расстоянии не более 50 км.Веса, прикрепленные к каждой паре соседних наблюдений, соответствуют обратному их расстоянию, так что более близкие соседи получают более высокие веса.Я также использую опцию zero.policy = TRUE, чтобы наблюдения, у которых нет соседей, были связаны с вектором нулевых весов.

После этого я пытаюсь подогнать пространственную модель панели следующим образом

mod <- spml(y ~  x  , data = data_p, listw = w50, na.action = na.fail, lag = F, spatial.error = "b", model = "within", effect = "twoways" ,zero.policy=TRUE)

но я получаю следующие сообщения об ошибках и предупреждения

Ошибка в lag.listw (listw, u): переменная содержит неконечные значения. Кроме того: было 50 илибольше предупреждений (используйте warnings (), чтобы увидеть первые 50)

Предупреждающие сообщения: 1: в mean.default (X [[i]], ...): аргумент не числовой или логический: возврат NA

...

50: в mean.default (X [[i]], ...): аргумент не является числовым или логическим: возвращает NA

Я полагаю, что это связано с наблюдениями не соседей.Может кто-нибудь помочь мне с этим?Есть ли способ справиться с наблюдениями, не являющимися соседями, кроме опции zero.policy?

Большое спасибо за помощь.

...