Получение прогнозов в новых точках географически взвешенной регрессии по r

У меня есть список наблюдаемых точек, в которых я хочу оценить географически взвешенную регрессию. Затем у меня есть отдельный и отличный набор точек, в которых я хочу сделать прогноз, используя эту оценочную модель. Это моделируется с помощью этого кода:

library(spgwr)
library(sp)

set.seed(1)
e <- runif(100,0,1)
n <- runif(100,0,1)
y <- runif(100,0,1)
x1 <- runif(100,0,1)
x2 <- runif(100,0,1)
est.df <- data.frame(cbind(y,x1,x2,e,n))
coordinates(est.df) <- ~ e + n

e < -runif(50,0,1)
n <- runif(50,0,1)
x1 <- runif(50,0,1)
x2 <- runif(50,0,1)
pred.df <- data.frame(cbind(x1,x2,e,n))
coordinates(pred.df) <- ~ e + n

remove(list = c("e","n","y","x1","x2"))

S.gwr <- gwr(y~x1+x2,
           data=est.df,
           coords=cbind(est.df$e, est.df$n),
           bandwidth=0.1,
           predictions = TRUE,
           fit.points=pred.df)

dim(S.gwr$SDF@data)
length(S.gwr$lm$fitted.values)

Моя проблема в том, что единственные подходящие значения в структуре S.gwr имеют длину 100 и относятся к 100 точкам, используемым для оценки модели, а не к 50 точкам в pred.df, для которых я хочу спрогнозировать y_hat. Может ли кто-нибудь помочь указать мне на проблему, которая не дает мне 50 прогнозов на основе точек в pred.df? Спасибо.

1 ответ

Если мы хотим получить прогнозы для набора тестов, мы можем установить только «predictions = TRUE» и установить fit.points как набор тестов при обучении модели. Это правильно? Кто-нибудь знает, как использовать функцию «прогноз» для получения значений прогноза в модели GWR? Я также использую библиотеку spgwr в R. Однако, если я наберу только «прогноз (модель, набор тестов)», это не сработает.

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