地理加权回归 | 模型如何应用于新数据的预测?

article/2025/9/30 6:28:25

专注系列化高质量的R语言教程

推文索引 | 联系小编 | 付费合集


有读者不知道如何用地理加权回归去预测新的数据。本篇以常用的两个工具包为例进行介绍。

本篇目录如下:

  • 0 数据准备

  • 1 spgwr工具包

  • 2 GWmodel工具包

  • 3 结语

相关推文:

  • spgwr | R语言与地理加权回归(Ⅰ-1):线性地理加权回归

  • spgwr | R语言与地理加权回归(Ⅰ-2):广义线性地理加权回归

  • GWmodel | 地理加权模型(Ⅱ-1):地理加权主成分分析(GWPCA)

  • GWmodel | 地理加权模型(Ⅱ-2):如何查看地理加权回归的显著性

0 数据准备

示例数据是来自spData工具包的NY8_utm18.shp。该数据在推文线性地理加权回归中使用过。

library(rgdal)
NY8 <- readOGR(system.file("shapes/NY8_utm18.shp",package = "spData"))

该数据共包含281个空间单元。随机选择其中的276个作为模型数据,剩余5个作为预测数据。代码如下:

set.seed(0312)
modelid <- sample(1:281, 276)
predid <- setdiff(1:281, modelid)modeldata <- NY8[modelid,]
preddata <- NY8[predid,]plot(modeldata)
plot(preddata, add = T, col = "red")
04acc7229f174ac8a2bc3f0728744c1d.png

1 spgwr工具包

使用spgwr工具包的函数运行一个地理加权模型:

library(spgwr)
form <- Z ~ PEXPOSURE + PCTAGE65P + PCTOWNHOME
bw <- gwr.sel(formula = form, data = modeldata,gweight = gwr.Gauss, method = "cv")model <- gwr(formula = form, data = modeldata,bandwidth = bw, gweight = gwr.Gauss)

该模型不能使用predict()函数进行预测:

predict(model, preddata) 
## Error in UseMethod("predict") : 
##  no applicable method for 'predict' applied to an object of class "gwr"

在R语言中,使用什么函数预测模型需要看对应工具包的设计。比如spgwr工具包,在帮助文档中可以发现gwr()函数有两个参数与模型预测有关:

  • fit.points: an object containing the coordinates of fit points; often an object from package sp; if missing, the coordinates given through the data argument object, or the coords argument are used;

  • predictions: default FALSE; if TRUE and no fit points given, return GW fitted values at data points, if fit points given and are a Spatial*DataFrame object containing the RHS variables in the formula, return GW predictions at the fit points.

因此,在spgwr工具包中模型运行和预测使用的是同一个函数;如需使用新数据进行预测,需使用fit.points参数指定包含新数据的矢量数据,并设置predictions = TRUE

model12 <- gwr(formula = form, data = modeldata,bandwidth = bw, gweight = gwr.Gauss,fit.points = preddata,predictions = T) 
## 查看预测结果
model12$SDF$pred
## [1]  0.04586992 -0.36963028 -0.09173360 -0.39631776  0.13528131
  • 对比modelmodel12SDF可以发现:不需要模型预测的model,其SDF@data对应的是模型数据;需要模型预测的model12,其SDF@data对应的是预测数据;

  • 其他函数如ggwr()函数的预测方法类似。

2 GWmodel工具包

使用GWmodel工具包的函数运行一个地理加权模型(带宽参数bw仍使用上例的值):

library(GWmodel)
model2 <- gwr.basic(formula = form, data = modeldata,bw = bw, kernel = "gaussian")

该工具包同样不支持使用predict()函数进行模型预测:

predict(model2, preddata) 
## Error in UseMethod("predict") : 
##  no applicable method for 'predict' applied to an object of class "gwrm"

查看帮助文档可发现一个gwr.predict()函数,其参数predictdata的说明如下:

  • predictdata: a Spatial*DataFrame object to provide prediction locations, i.e. SpatialPointsDataFrame or SpatialPolygonsDataFrame as defined in package sp.

示例如下:

model22 <- gwr.predict(formula = form, data = modeldata,bw = bw, kernel = "gaussian",predictdata = preddata) 
## 查看预测结果
model22$SDF$prediction
## [1]  0.04586992 -0.36963028 -0.09173360 -0.39631776  0.13528131

3 结语

关于R语言中的函数使用方法,学堂君在下面的推文中已经介绍了:

  • 如何正确使用R语言的函数——为什么有的模型结果不能使用summary函数查询?


http://chatgpt.dhexx.cn/article/htCFWaak.shtml

相关文章

城市数据派(多尺度地理加权回归理论与应用——关于地理加权回归GWR和多尺度地理加权回归MGWR)

目前&#xff0c;GWR已经成为处理空间异质性的主要方法之一。与经典的全局回归模型的OLS不同&#xff0c;GWR是局部回归模型&#xff0c;模型系数是通过观测周围的样本来回归得到。 在这里插入图片描述

R语言地理加权回归数据分析

在自然和社会科学领域有大量与地理或空间有关的数据&#xff0c;这一类数据一般具有严重的空间异质性&#xff0c;而通常的统计学方法并不能处理空间异质性&#xff0c;因而对此类型的数据无能为力。以地理加权回归为基础的一系列方法&#xff1a;经典地理加权回归&#xff0c;…

白话空间统计二十四:地理加权回归(五)

这是写概念的最后一节……从下一节开始&#xff0c;大家就可以告别枯燥的理论和概念了&#xff08;此处应有掌声&#xff09; 上一章节写到&#xff0c;地理加权中&#xff0c;空间关系的比广义的空间关系的限制要多得多&#xff0c;常用的就是用距离衰减的方法&#xff0c;而…

白话空间统计二十四:地理加权回归(八)结果解读(一)

地理加权回归分析完成之后&#xff0c;与OLS不同的是会默认生成一张可视化图&#xff0c;像下面这张一样的&#xff1a; 这种图里面数值和颜色&#xff0c;主要是系数的标准误差。主要用来衡量每个系数估计值的可靠性。标准误差与实际系数值相比较小时&#xff0c;这些估计值…

GWmodel | 地理加权模型(Ⅱ-2):如何查看地理加权回归的显著性

《地理加权模型》系列自推出来&#xff0c;深受各位读者喜爱。前几天有读者问&#xff1a;使用gwr()等函数运行模型后&#xff0c;怎么去查看它里面的信息呢&#xff1f;比如如何看变量系数的显著性。本篇就来介绍如何在R语言中去查看GWR模型的输出结果。 对于一般模型如线型模…

多尺度地理加权回归(MGWR),地理加权回归(GWR),最小二乘法(OLS)回归模型的对比分析

MGWR&#xff08;Multiscale Geographic Weighted Regression多尺度地理加权回归&#xff09; 一&#xff0c;概念 经典GWR由Fotheringham在1996年提出&#xff0c;基于构建空间权重矩阵的回归模型&#xff0c;普遍用于空间的影响因素分析上。SGWR&#xff08;半参数地理加权…

白话空间统计二十四:地理加权回归(四)

本来这一章准备直接写&#xff08;照抄&#xff09;ArcGIS的帮助文档&#xff0c;写地理加权回归工具的使用……&#xff0c;然后就直接结束地理加权回归的&#xff0c;但是近来收到不少同学的邮件&#xff0c;很多都是掉在了当年虾神挖出的大坑里面&#xff0c;比如写了方法&a…

白话空间统计二十四:地理加权回归(二)

六千多字的大篇……诚意满满啊…… 橘生淮南则为橘&#xff0c;生于淮北则为枳&#xff0c;叶徒相似&#xff0c;其实味不同。所以然者何&#xff1f;水土异也。——《晏子春秋内篇杂下》 水土不服、南北差异&#xff0c;&#xff08;包括地域歧视&#xff09;是自古以来的一…

白话空间统计二十四:地理加权回归(三)

本章有数学公式……对数学过敏者慎入…… 前文再续&#xff0c;书接上一回……上一次说到&#xff0c;在改进全局回归的基础上&#xff0c;GWR终于横空出世了&#xff0c;从此空间分析领域终于有了自己专用的回归算法。如果说&#xff0c;空间统计有别于经典统计学的两大特征&…

用ArcGIS做GTWR 时空地理加权回归分析

空间异质性是空间计量回归的重要研究对象&#xff0c;通常采用地理加权回归模型进行分析&#xff0c;而ArcGIS自带工具箱只能支持截面数据的地理加权回归。要分析面板数据则采用地理和时间加权回归&#xff08; GTWR&#xff09;&#xff0c;该模型是一个局部线性回归模型&…

ArcGIS与地理加权回归【三】

开 工 大 急 原址链接&#xff1a; ArcGIS与地理加权回归【三】https://mp.weixin.qq.com/s/x85EXKImSHio1IZovW9qdA 接着5个月之前.......ArcGIS与地理加权回归GWR【二】以及MGWR软件下载 在ASU下载了样例“关于影响佐治亚州受教育水平”的数据。在上一篇已简单介绍…

白话空间统计二十四:地理加权回归(一)

二十四在人的生活中有举足轻重的地位&#xff0c;一年有二十四个节气&#xff0c;一天有二十四个小时。中国的正史称之为“二十四史”&#xff08;有人说加清史就二十五了……但是正史这个词&#xff0c;出自清乾隆钦定二十四史&#xff0c;所以一直“正史”这个词&#xff0c;…

ArcGIS Pro中的回归分析浅析(下)地理加权回归工具(GWR)使用小结

内容导读 1&#xff09;回归概念介绍&#xff1b; 2&#xff09;探索性回归工具&#xff08;解释变量的选择&#xff09;使用&#xff1b; 3&#xff09;广义线性回归工具(GLR)使用&#xff1b; *加更&#xff1a;广义线性回归工具的补充内容 4&#xff09;地理加权回归工…

地理加权回归简易总结

地理加权回归 空间统计有别于经典统计学的两大特征&#xff1a;空间相关性和空间异质性&#xff0c;莫兰指数等可以用来量化空间相关性&#xff0c;那么地理加权回归&#xff0c;就可以用来量化空间异质性。 1.地理加权回归的出现&#xff1a; 1&#xff09;因为地理位置的变…

(学习笔记)地理加权回归(GWR)、多尺度地理加权回归(MGWR)原理与软件实现

1回归 1.1回归 回归分析是最常用的社会科学统计方法。回归用于评估两个或更多要素属性之间的关系。通过回归分析&#xff0c;我们可以对空间关系进行建模、检查和探究&#xff1b;回归分析还可以帮助解释所观测到的空间模式背后的诸多因素&#xff0c;例如为什么有些地区会持…

ArcGIS与地理加权回归GWR【一】

公众号原文 ArcGIS与地理加权回归GWR【一】https://mp.weixin.qq.com/s/fMPYxO3G7ff2192ZQICN-A 开个新坑啊&#xff0c;写一写关于地理加权回归基础的东西&#xff08;深了我也不会啊&#xff09;&#xff0c;希望也能用通俗的语言来记录一下我以前学习空间统计过程中的理解…

[信息论与编码理论专题-2]:信息与熵

作者主页(文火冰糖的硅基工坊)&#xff1a;https://blog.csdn.net/HiWangWenBing 本文网址&#xff1a;https://blog.csdn.net/HiWangWenBing/article/details/118526747 前言&#xff1a;什么是熵 熵的概念是由德国物理学家克劳修斯于1865年所提出。最初是用来描述“能量退化…

熵编码(算术+霍夫曼)编解码基础知识总结

在MPEG的TMC13模型中&#xff0c;对于surface point cloud compression&#xff0c;对block和vertices进行熵编码&#xff1b;对于lidar point cloud compression&#xff0c;需要对量化残差进行算术编码。这里对熵编码相关的知识进行了总结。 熵编码: (1)https://blog.csdn.n…

2 熵与编码

先来尝试编码一副扑克牌&#xff0c;首先考虑花色rank的方式编码&#xff0c;如下图&#xff0c;即第一张牌是0&#xff0c;最后一张是51&#xff08;一共52张牌&#xff09; 在一个集合中&#xff0c;假设最大元素为M&#xff0c;那么我们对M编码需要的最小编码长度为log2M&a…