地理加权回归 (GWR) (Spatial Statistics)

许可等级:BasicStandardAdvanced

摘要

执行“地理加权回归 (GWR)”,这是一种用于建模空间变化关系的线性回归的局部形式。

了解有关“地理加权回归”工作原理的详细信息

插图

Geographically Weighted Regression
GWR is a local regression model. Coefficients are allowed to vary.

用法

语法

GeographicallyWeightedRegression_stats (in_features, dependent_field, explanatory_field, out_featureclass, kernel_type, bandwidth_method, {distance}, {number_of_neighbors}, {weight_field}, {coefficient_raster_workspace}, {cell_size}, {in_prediction_locations}, {prediction_explanatory_field}, {out_prediction_featureclass})
参数说明数据类型
in_features

包含因变量和自变量的要素类。

Feature Layer
dependent_field

包含要尝试建模的值的数值字段。

Field
explanatory_field
[explanatory_field,...]

表示回归模型中的解释变量或自变量的字段列表。

Field
out_featureclass

接收因变量的估计数和残差的输出要素类。

Feature Class
kernel_type

指定核是否构建为固定距离,或者指定是否允许核在作为要素密度函数的范围内进行变化。

  • FIXED用来解决各局部回归分析的空间环境(“高斯”核)属于固定距离。
  • ADAPTIVE空间环境(“高斯”核)是指定近邻数的函数。要素分布越密集,空间环境越小;要素分布越稀疏,空间环境越大。
String
bandwidth_method

指定核范围的确定方式。当选择 AICc 或 CV 时,此工具将为您查找最佳距离/近邻参数。通常,如果不了解用于 distancekernel_type = FIXED)或number_of_neighborskernel_type = ADAPTIVE)参数的选项,则选择 AICc 或 CV。如果选择 BANDWIDTH_PARAMETER,则需要为 distancenumber_of_neighbors 参数指定一个值。

  • AICc使用“Akaike 信息准则 (AICc)”确定核的范围。
  • CV使用“交叉验证”确定核的范围。
  • BANDWIDTH_PARAMETER根据固定距离或固定近邻数确定核的范围。
String
distance
(可选)

当核类型为 FIXED 以及带宽方法为 BANDWIDTH_PARAMETER 时,指定固定带宽范围或距离。

Double
number_of_neighbors
(可选)

当核类型为 ADAPTIVE 以及带宽方法为 BANDWIDTH_PARAMETER 时,表示在“高斯”核的局部带宽中所包含的精确近邻数的整数。

Long
weight_field
(可选)

包含单个要素的空间权重的数值字段。此权重字段允许部分要素在模型校准过程中比其他要素更为重要。主要用于在不同位置采集的样本数目发生变化以及对因变量和自变量中的值求平均值的情况中,并且样本越多,位置越稳定(应该进行更高的加权)。如果一个位置平均具有 25 个不同的样本,但其他位置平均只具有 2 各样本,则可将样本数用作权重字段,以便在模型校准中具有更多样本的位置比具有少量样本的位置有更大的影响力。

Field
coefficient_raster_workspace
(可选)

将创建所有系数栅格的工作空间的完整路径名。如果提供了此工作空间,则会为截距及各解释变量创建栅格。

Folder
cell_size
(可选)

创建系数栅格时使用的像元大小(数字)或对像元大小的引用(栅格数据集的完整路径名)。

默认情况下,像元大小为在地理处理环境输出坐标系中指定的范围的最短宽度或高度除以 250。

Analysis Cell Size
in_prediction_locations
(可选)

一种要素类,包含表示应计算评估值的位置的要素。数据集中的每个要素都应包含所有指定的解释变量的值;将使用为输入要素类数据校准的模型来评估这些要素的因变量。

Feature Layer
prediction_explanatory_field
[prediction_explanatory_field,...]
(可选)

表示“预测位置”要素类中的解释变量的字段列表。这些字段名的供应顺序应与在输出要素类“解释”变量参数中的列出顺序相同(一对一的对应关系)。如果未指定任何预测解释变量,则输出预测要素类将仅包含各预测位置的已计算系数值。

Field
out_prediction_featureclass
(可选)

接收“预测”位置要素类中各要素的因变量估计数的输出要素类。

Feature Class

代码实例

GeographicallyWeightedRegression 示例(Python 窗口)

以下 Python 窗口脚本演示了如何使用 GeographicallyWeightedRegression 工具。

import arcpy
arcpy.env.workspace = "c:/data"
arcpy.GeographicallyWeightedRegression_stats("CallData.shp", "Calls","BUS_COUNT;RENTROCC00;NoHSDip",
                                             "CallsGWR.shp", "ADAPTIVE", "BANDWIDTH PARAMETER",
                                             "#", "25", "#","CoefRasters", "135", "PredictionPoints", 
                                             "#", "GWRCallPredictions.shp")
GeographicallyWeightedRegression 示例(独立 Python 脚本)

以下独立 Python 脚本演示了如何使用 GeographicallyWeightedRegression 工具。

# Model 911 emergency calls using GWR

# Import system modules
import arcpy

# Set the geoprocessor object property to overwrite existing outputs
arcpy.gp.overwriteOutput = True

# Local variables...
workspace = r"C:\Data"

try:
    # Set the current workspace (to avoid having to specify the full path to the feature classes each time)
    arcpy.env.workspace = workspace

    # 911 Calls as a function of {number of businesses, number of rental units,
    # number of adults who didn't finish high school}
    # Process: Geographically Weighted Regression... 
    gwr = arcpy.GeographicallyWeightedRegression_stats("CallData.shp", "Calls", 
                        "BUS_COUNT;RENTROCC00;NoHSDip",
                        "CallsGWR.shp", "ADAPTIVE", "BANDWIDTH PARAMETER","#", "25", "#",
                        "CoefRasters", "135", "PredictionPoints", "#", "GWRCallPredictions.shp")

    # Create Spatial Weights Matrix to use with Global Moran's I tool
    # Process: Generate Spatial Weights Matrix... 
    swm = arcpy.GenerateSpatialWeightsMatrix_stats("CallsGWR.shp", "UniqID",
                        "CallData25Neighs.swm",
                        "K_NEAREST_NEIGHBORS",
                        "#", "#", "#", 25) 
                        
    # Calculate Moran's Index of Spatial Autocorrelation for 
    # OLS Residuals using a SWM File.  
    # Process: Spatial Autocorrelation (Morans I)...      
    moransI = arcpy.SpatialAutocorrelation_stats("CallsGWR.shp", "StdResid",
                        "NO_REPORT", "GET_SPATIAL_WEIGHTS_FROM_FILE", 
                        "EUCLIDEAN_DISTANCE", "NONE", "#", 
                        "CallData25Neighs.swm")

except:
    # If an error occurred when running the tool, print out the error message.
    print arcpy.GetMessages()

环境

输出坐标系

完成分析后,将要素几何投影到“输出坐标系”中。因此,距离参数的输入值应以与输入要素类相同的单位进行指定。输出像元大小的输入值应以与“输出坐标系”相同的单位进行指定。

相关主题

许可信息

ArcGIS for Desktop Basic: 需要 Spatial Analyst 或 Geostatistical Analyst
ArcGIS for Desktop Standard: 需要 Spatial Analyst 或 Geostatistical Analyst
ArcGIS for Desktop Advanced: 是
5/10/2014