Zusammenfassung
Führt eine generalisierte lineare Regression (GLR) aus, um Vorhersagen zu generieren oder eine abhängige Variable in Hinsicht auf ihre Beziehung zu einem Satz erklärender Variablen zu modellieren. Dieses Werkzeug kann für kontinuierliche (OLS) und binäre (logistische) Modelle sowie für Anzahlmodelle (Poisson) verwendet werden.
Verwendung
Dieses Werkzeug kann in zwei verschiedenen Operationsmodi verwendet werden. Sie können die Performance verschiedener Modelle beim Erkunden unterschiedlicher erklärender Variablen und Werkzeugeinstellungen auswerten. Wenn Sie ein gutes Modell gefunden haben, können Sie das Modell an ein neues Dataset anpassen.
Verwenden Sie den Parameter Eingabe-Features mit einem Feld, das das Phänomen darstellt, das Sie modellieren (der Parameter Abhängige Variable), und einem oder mehreren Feldern, die die erklärenden Variablen darstellen.
Das Werkzeug Generalisierte lineare Regression erzeugt darüber hinaus Ausgabe-Features und Diagnosen. Ausgabe-Feature-Classes werden automatisch zur Karte hinzugefügt, wobei ein Rendering-Schema auf Modellresiduen angewendet wird. Eine vollständige Erklärung jeder Ausgabe wird nachfolgend bereitgestellt.
Es ist wichtig, den richtigen Modelltyp (Kontinuierlich, Binär oder Anzahl) für die Analyse zu verwenden, damit die Regressionsanalyse möglichst genaue Ergebnisse liefert.
Ergebnisse der Modellzusammenfassung und Diagnosen werden in das Meldungsfenster eingegeben, und Diagramme werden unterhalb der Ausgabe-Feature-Class erstellt. Die gemeldeten Diagnosen sind abhängig vom Parameterwert Modelltyp. Die folgenden drei Optionen für den Modelltyp sind verfügbar:
- Verwenden Sie Kontinuierlich (Gauß) als Modelltyp, wenn die abhängige Variable einen großen Wertebereich haben kann, z. B. Temperaturen oder Umsätze. Im Idealfall ist die abhängige Variable normal verteilt.
Verwenden Sie den Modelltyp Binär (Logistisch), wenn die abhängige Variable einen von zwei möglichen Werten annehmen kann, z. B. Erfolg oder Misserfolg, Anwesenheit oder Abwesenheit. Das Feld mit der abhängigen Variable muss entweder ein numerisches Feld oder ein Textfeld sein. Wenn dieses Feld ein numerisches Feld ist, darf es nur Einsen und Nullen enthalten. Wenn dieses Feld ein Textfeld ist, darf es nur zwei eindeutige Werte enthalten. Wenn Sie ein Textfeld verwenden, dann müssen Sie den Parameter Abhängige Variablen zuordnen verwenden, um die eindeutigen Textwerte den Einsen und Nullen zuzuordnen. Ihre Daten sollten Variationen der Einsen und Nullen der eindeutigen Textwerte aufweisen.
Verwenden Sie den Modelltyp Anzahl (Poisson), wenn die abhängige Variable diskontinuierlich ist und die Anzahl eines bestimmten Ereignisses darstellt, z. B. die Anzahl von Straftaten. Anzahlmodelle können auch verwendet werden, wenn die abhängige Variable ein Verhältnis darstellt und es sich bei dem Nenner des Verhältnisses um einen Festwert handelt, z. B. Umsatz pro Monat oder die Anzahl der krebskranken Personen pro 10.000 Einwohner. Das Modell Anzahl geht davon aus, dass der Mittelwert und die Abweichung der abhängigen Variablen gleich sind und die Werte der abhängigen Variablen weder negativ sind noch Dezimalstellen enthalten.
Die Parameterwerte Abhängige Variable und Erklärende Variable sollten numerische Felder sein, die eine Vielzahl von Werten enthalten. Dieses Werkzeug kann keine Berechnung vornehmen, wenn die Variablen alle dieselben Werte aufweisen (wenn beispielsweise alle Werte für ein Feld 9,0 betragen).
Features mit Vorhersage- oder erklärenden Feldern, die mindestens einen NULL-Wert oder eine leere Zeichenfolge aufweisen, werden von der Ausgabe ausgeschlossen. Sie können die Werte bei Bedarf mit dem Werkzeug Feld berechnen ändern.
Überprüfen Sie die zu hohen und zu niedrigen Vorhersagen in den Regressionsresiduen visuell, um festzustellen, ob sie Aufschluss über potenziell fehlende Variablen im Regressionsmodell geben.
Mit dem erstellten Regressionsmodell können Sie Vorhersagen für andere Features treffen. Für diese Vorhersagen ist es erforderlich, dass alle Vorhersage-Features Werte für jede der angegebenen erklärenden Variablen enthalten. Stimmen die Feldnamen aus den Parametern "Eingabe-Features" und "Vorherzusagende Positionen" nicht überein, wird ein Parameter für den Variablenabgleich bereitgestellt. Beim Abgleich der erklärenden Variablen müssen die Felder aus den Eingabe-Features und die Parameter für die Eingabe-Vorhersage-Features den gleichen Typ aufweisen (z. B. müssen Double-Felder mit Double-Feldern abgeglichen werden).
Mithilfe der folgenden Schritte können Sie die Verarbeitungsgeschwindigkeit des Werkzeugs Generalisierte lineare Regression verbessern:
- Legen Sie die Verarbeitungsausdehnung für die Analyse so fest, dass nur die gewünschten Daten analysiert werden.
- Geben Sie keine Koeffiziententabelle aus.
- Verwenden Sie lokale Daten an der Stelle, an der die Analyse ausgeführt wird.
Dieses Geoverarbeitungswerkzeug wird unterstützt durch Spark. Bei Analysen auf Ihrem Desktop-Computer werden mehrere Kerne parallel verwendet. Weitere Informationen über die Ausführung der Analyse finden Sie unter Überlegungen zu GeoAnalytics Desktop-Werkzeugen.
Bei der Ausführung von GeoAnalytics Desktop-Werkzeugen wird die Analyse auf Ihrem Desktop-Computer durchgeführt. Für eine optimale Performance sollten die Daten auf Ihrem Desktop verfügbar sein. Wenn Sie einen gehosteten Feature-Layer verwenden, wird empfohlen, ArcGIS GeoAnalytics Server zu verwenden. Wenn Ihre Daten nicht lokal verfügbar sind, dauert die Ausführung eines Werkzeugs bedeutend länger. Informationen zur Verwendung von ArcGIS GeoAnalytics Server für Analysen finden Sie unter GeoAnalytics Tools.
Die GeoAnalytics-Implementierung des Werkzeugs "Generalisierte lineare Regression" (GLR) unterliegt folgenden Beschränkungen:
- Es handelt sich um ein globales Regressionsmodell, in dem die räumliche Verteilung der Daten unberücksichtigt bleibt.
- Bei der Analyse wird der Morans I-Test nicht auf die Residuen angewendet.
- Als Eingabe werden Feature-Datasets (Punkte, Linien, Polygone und Tabellen) unterstützt, jedoch keine Raster.
- Eine Klassifizierung von Werten ist nicht möglich.
Syntax
arcpy.gapro.GeneralizedLinearRegression(input_features, dependent_variable, model_type, explanatory_variables, output_features, {input_features_to_predict}, {explanatory_variables_to_match}, {dependent_variable_mapping}, {output_predicted_features}, {coefficient_table})
Parameter | Erklärung | Datentyp |
input_features | Der Layer, der die abhängigen und unabhängigen Variablen enthält. | Table View |
dependent_variable | Das numerische Feld mit den beobachteten Werten, die modelliert werden sollen. | Field |
model_type | Gibt den Typ der Daten an, die modelliert werden.
| String |
explanatory_variables [explanatory_variables,...] | Eine Liste von Feldern, die unabhängige erklärende Variablen im Regressionsmodell darstellen. | Field |
output_features | Der Name der erstellten Feature-Class mit den Schätzungen und Residuen abhängiger Variablen. | Table; Feature Class |
input_features_to_predict (optional) | Ein Layer mit Features, die Positionen darstellen, an denen Schätzungen berechnet werden sollen. Jedes Feature im Dataset sollte Werte für alle angegebenen erklärenden Variablen enthalten. Die abhängige Variable für diese Features wird anhand des Modells geschätzt, das für die Daten des Eingabe-Layers kalibriert wurde. | Table View |
explanatory_variables_to_match [[Field from Prediction Locations, Field from Input Features],...] (optional) | Gleicht die erklärenden Variablen im Parameter input_features_to_predict mit den entsprechenden erklärenden Variablen des Parameters input_features ab, Beispiel: [["LandCover2000", "LandCover2010"], ["Income", "PerCapitaIncome"]]. | Value Table |
dependent_variable_mapping [dependent_variable_mapping,...] (optional) | Zwei Zeichenfolgen für die Werte, die bei der binären Regression 0 (nicht vorhanden) und 1 (vorhanden) zugeordnet werden. Standardmäßig werden 0 und 1 verwendet. Um beispielsweise eine Verhaftung anhand der Felder mit den Werten "Verhaftung" und "Keine Verhaftung" vorherzusagen, geben Sie "Keine Verhaftung" für den Wert "False" (0) und "Verhaftung" für den Wert "True" (1) ein. | Value Table |
output_predicted_features (optional) | Die Ausgabe-Feature-Class mit den Schätzungen der abhängigen Variablen für jeden input_features_to_predict-Wert. Die Ausgabe-Feature-Class mit den Schätzungen der abhängigen Variablen für jeden Wert der Eingabe-Vorhersage-Features. | Table; Feature Class |
coefficient_table (optional) | Die Ausgabe-Feature-Class mit den Schätzungen der abhängigen Variablen für jeden input_features_to_predict-Wert. Die Ausgabe-Feature-Class mit den Schätzungen der abhängigen Variablen für jeden Wert der Eingabe-Vorhersage-Features. | Table |
Codebeispiel
Im folgenden eigenständigen Skript wird veranschaulicht, wie das Werkzeug GeneralizeLinearRegression verwendet wird.
In diesem Skript wird ein Modell erstellt und vorhergesagt, ob eine Verhaftung wegen bestimmter Straftaten vorgenommen wurde.
# Name: GeneralizedLinearRegression.py
# Description: Run GLR on crime data and predict if an arrest was made for a crime reporting.
#
# Requirements: Advanced License
# Import system modules
import arcpy
arcpy.env.workspace = "c:/data/city.gdb"
# Set local variables
trainingDataset = "old_crimes"
predictionDataset = "new_crimes"
outputTrainingName = "training"
outputPredictedName = "predicted"
# Execute Generalize Linear Regression
arcpy.geoanalytics.GeneralizedLinearRegression(
trainingData, "ArrestMade", "BINARY", "CRIME_TYPE; WARD; DAY_OF_MONTH",
outputTrainingName, None, outputPredictedName,
"CRIME_TYPE CRIME_TYPE;WARD WARD;DAY_OF_MONTH DAY_OF_MON",
"Arrest NoArrest")
Umgebungen
Lizenzinformationen
- Basic: Nein
- Standard: Nein
- Advanced: Ja