Geographisch gewichtete Regression (GWR) (Spatial Statistics)

Lizenzstufe:BasicStandardAdvanced

Zusammenfassung

Führt eine geographisch gewichtete Regression (GWR) aus, eine lokale Form linearer Regression zur Modellierung räumlich variierender Beziehungen.

Weitere Informationen zur Funktionsweise von "Geographisch gewichtete Regression"

Bild

Geographisch gewichtete Regression
GWR ist ein lokales Regressionsmodell. Die Koeffizienten können variieren.

Verwendung

Syntax

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})
ParameterErläuterungDatentyp
in_features

Die Feature-Class, die die abhängigen und unabhängigen Variablen enthält.

Feature Layer
dependent_field

Das Zahlenfeld, das Werte für den geplanten Modellierungsvorgang enthält.

Field
explanatory_field
[explanatory_field,...]

Eine Liste von Feldern, die unabhängige erklärende Variablen im Regressionsmodell darstellen.

Field
out_featureclass

Die Ausgabe-Feature-Class zum Empfangen abhängiger Variablenschätzungen und Residuen.

Feature Class
kernel_type

Gibt an, ob der Kernel als feste Entfernung oder als Funktion der Feature-Dichte mit variierender Ausdehnung erstellt wird.

  • FIXEDDer räumliche Kontext (der Gauß'sche Kernel) zur Berechnung jeder lokalen Regressionsanalyse ist eine feste Entfernung.
  • ADAPTIVEDer räumliche Kontext (der Gauß'sche Kernel) ist eine Funktion einer angegebenen Anzahl von Nachbarn. Bei hoher Feature-Dichte ist der räumliche Kontext kleiner, bei niedriger Feature-Dichte größer.
String
bandwidth_method

Gibt an, wie die Ausdehnung des Kernels bestimmt werden soll. Bei Auswahl von AICc oder CV sucht das Werkzeug automatisch die optimale Entfernung bzw. die optimale Anzahl von Nachbarn. In der Regel wählen Sie entweder AICc oder CV aus, wenn Sie sich nicht sicher sind, welchen Wert Sie für den Parameter distance (kernel_type = FIXED) bzw. number_of_neighbors (kernel_type = ADAPTIVE) verwenden sollen. Wenn Sie BANDWIDTH_PARAMETER wählen, müssen Sie einen Wert für den Parameter distance oder number_of_neighbors angeben.

  • AICcDie Ausdehnung des Kernels wird mit dem Akaike Information Criterion (AICc) bestimmt.
  • CVDie Ausdehnung des Kernels wird mit Kreuzvalidierung bestimmt.
  • BANDWIDTH_PARAMETERDie Ausdehnung des Kernels wird anhand einer festen Entfernung oder einer festen Anzahl von Nachbarn bestimmt.
String
distance
(optional)

Gibt eine feste Bandbreitenausdehnung oder Entfernung an, wenn der Kernel-Typ FIXED und die Bandbreitenmethode BANDWIDTH_PARAMETER ist.

Double
number_of_neighbors
(optional)

Ein Ganzzahlwert, der die genaue Anzahl von Nachbarn angibt, die in die lokale Bandbreite des Gauß'schen Kernels einbezogen werden soll, wenn der Kernel-Typ ADAPTIVE und die Bandbreitenmethode BANDWIDTH_PARAMETER ist.

Long
weight_field
(optional)

Das Zahlenfeld, das eine räumliche Gewichtung für einzelne Features enthält. Dieses Gewichtungsfeld ermöglicht es, einige Features beim Modellkalibrierungsprozess höher zu gewichten als andere. Es ist sehr nützlich, wenn die Anzahl der an verschiedenen Orten genommenen Stichproben variiert, die Werte für die abhängigen und unabhängigen Variablen gemittelt werden und Orte mit mehr Stichproben zuverlässiger sind (und aus diesem Grund höher gewichtet werden sollten). Wenn Sie für einen Ort durchschnittlich 25 verschiedene Stichproben haben, für einen anderen Ort aber nur durchschnittlich zwei Stichproben, können Sie die Anzahl der Stichproben als Gewichtungsfeld verwenden, sodass die Orte mit mehr Stichproben bei der Modellkalibrierung höher gewichtet werden als die Orte mit weniger Stichproben.

Field
coefficient_raster_workspace
(optional)

Ein vollständiger Pfadname zu dem Workspace, in dem alle Koeffizienten-Raster erstellt werden. Wenn dieser Workspace bereitgestellt wird, werden Raster für den Intercept und jede erklärende Variable erstellt.

Folder
cell_size
(optional)

Die Zellengröße (eine Zahl) oder der Verweis auf die Zellengröße (ein Pfadname zu einem Raster-Dataset) zur Verwendung beim Erstellen der Koeffizienten-Raster.

Die Standardzellengröße entspricht der Breite oder Höhe (jeweils der kürzeste Wert) der im Ausgabe-Koordinatensystem der Geoverarbeitungsumgebung angegebenen Ausdehnung dividiert durch 250.

Analysis Cell Size
in_prediction_locations
(optional)

Eine Feature-Class mit Features, die Positionen darstellen, an denen Schätzungen berechnet werden sollen. Jedes Feature in diesem Dataset muss Werte für alle angegebenen erklärenden Variablen enthalten. Die abhängige Variable für diese Features wird mit dem für die Eingabe-Feature-Class-Daten kalibrierten Modell geschätzt.

Feature Layer
prediction_explanatory_field
[prediction_explanatory_field,...]
(optional)

Eine Liste von Feldern, die erklärende Variablen in der Prediction-Locations-Feature-Class darstellen. Diese Feldnamen müssen in der gleichen Reihenfolge (1:1-Entsprechung) angegeben werden wie die für den Parameter "Erklärende Variablen" der Eingabe-Feature-Class. Wenn keine erklärenden Variablen für die Vorhersage angegeben werden, enthält die Ausgabe-Prediction-Feature-Class nur die berechneten Koeffizienten für jede vorhergesagte Position.

Field
out_prediction_featureclass
(optional)

Die Ausgabe-Feature-Class, in der die abhängigen Variablenschätzungen für jedes Feature in der Prediction-Locations-Feature-Class gespeichert werden.

Feature Class

Codebeispiel

GeographicallyWeightedRegression - Beispiel (Python-Fenster)

Das folgende Skript im Python-Fenster veranschaulicht, wie Sie das Werkzeug "GeographicallyWeightedRegression" verwenden.

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 - Beispiel (eigenständiges Python-Skript)

Das folgende eigenständige Python-Skript veranschaulicht, wie Sie das Werkzeug "GeographicallyWeightedRegression" verwenden.

# 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()

Umgebung

Ausgabe-Koordinatensystem

Die Feature-Geometrie wird nach Abschluss der Analyse auf das Ausgabe-Koordinatensystem projiziert. Daher sollte der Wert für den Parameter Entfernung in den Einheiten eingegeben werden, die in der Eingabe-Feature-Class festgelegt sind. Die Werte für die Ausgabe-Zellengröße sollten in den Einheiten eingegeben werden, die im Ausgabe-Koordinatensystem festgelegt sind.

Verwandte Themen

Lizenzierungsinformationen

ArcGIS for Desktop Basic: Erfordert ArcGIS Spatial Analyst oder Geostatistical Analyst
ArcGIS for Desktop Standard: Erfordert ArcGIS Spatial Analyst oder Geostatistical Analyst
ArcGIS for Desktop Advanced: Ja
6/5/2014