Resumen
Realiza una regresión lineal generalizada (GLR) para generar predicciones o para modelar una variable dependiente en términos de su relación con un conjunto de variables explicativas. Esta herramienta se puede usar para ajustarse a modelos continuos (OLS), binarios (logísticos) y de recuento (Poisson).
Uso
Esta herramienta puede usarse en dos modos de operación. Puede evaluar el rendimiento de distintos modelos al explorar distintas variables explicativas y ajustes de la herramienta. Una vez encontrado un buen modelo, puede ajustarlo a un dataset nuevo.
Use el parámetro Entidades de entrada con un campo que represente el fenómeno que está modelando (el parámetro Variable dependiente) y uno o varios campos que representen las variables explicativas.
La herramienta Regresión lineal generalizada también produce entidades y diagnósticos de salida. Las capas de entidades de salida se agregan automáticamente al mapa con un esquema de representación en pantalla que se aplica a los residuales del modelo. A continuación, se proporciona una explicación completa de cada salida.
Es importante usar el tipo de modelo correcto (Continuo, Binario o Recuento) para su análisis con el fin de obtener resultados precisos de su análisis de regresión.
Los diagnósticos y resultados del resumen del modelo se escriben en la ventana de mensajes y los gráficos se crean bajo la clase de entidad de salida. Los diagnósticos devueltos dependen del valor del parámetro Tipo de modelo. Las tres opciones de tipo de modelo son las siguientes:
- Use el tipo de modelo Continuo (Gausiano) si la variable dependiente puede admitir un amplio rango de valores, por ejemplo, temperatura o ventas totales. Lo ideal sería que la variable dependiente presentara una distribución normal.
Use el modelo Binario (logístico) si la variable dependiente puede admitir uno de dos valores posibles, por ejemplo, éxito y fracaso o presencia y ausencia. El campo que contiene la variable dependiente debe ser un campo numérico o de texto. Si el campo es numérico, debería contener solamente unos y ceros. Si el campo es de texto, debería contener solo dos valores distintos. Si utiliza un campo de texto, debe utilizar el parámetro Asignar variables dependientes para asignar los valores de texto distintos a unos y ceros. Debe existir una variación de los unos y los ceros de los valores de textos distintos de sus datos.
Utilice el tipo de modelo Recuento (Poisson) si la variable dependiente es discreta y representa el número de ocurrencias de un evento, por ejemplo, un recuento de delitos. Los modelos de recuento también se pueden utilizar si la variable dependiente representa una tasa y el denominador de esta es un valor fijo como, por ejemplo, las ventas mensuales o el número de gente con cáncer por cada 10.000 habitantes. El modelo Recuento presupone que el valor medio y la varianza de la variable dependiente son iguales y que los valores de la variable dependiente no pueden ser negativos ni contener decimales.
Los valores de los parámetros Variable dependiente y Variable explicativa deben ser campos numéricos con un rango de valores. Esta herramienta no puede resolver cuando las variables tienen los mismos valores (por ejemplo, si todos los valores de un campo son 9,0).
Las entidades con uno o varios valores nulos o valores de cadena de caracteres vacíos en campos explicativos o de predicción se ejecutarán desde la salida. Puede modificar los valores mediante la herramienta Calcular campo si es necesario.
Inspeccione sobrepredicciones y las subpredicciones que sean evidentes en los residuales de regresión para ver si proporcionan información acerca de las posibles variables que están ausentes en el modelo de regresión.
Puede utilizar el modelo de regresión que se ha creado para realizar predicciones para otras entidades. Crear dichas predicciones requiere que cada una de las entidades de predicción tenga valores para cada una de las variables explicativas proporcionadas. Si los nombres de campo de los parámetros entidades de entrada y ubicaciones de predicción no coinciden, se proporciona una variable que coincide con el parámetro. Al comparar las variables explicativas, los campos de los parámetros Entidades de entrada y Entidades de predicción de entrada deben ser del mismo tipo (los campos dobles deben corresponderse con los campos dobles, por ejemplo).
La implementación en GeoAnalytics de GLR presenta las siguientes limitaciones:
- Es un modelo de regresión global y no tiene en cuenta la distribución espacial de los datos.
- El análisis no aplica la prueba I de Moran en los residuales.
- Los datasets de entidades (puntos, líneas, polígonos y tablas) se admiten como entrada; los rásteres no se admiten.
- No puede clasificar valores en varias clases.
Esta herramienta de geoprocesamiento se basa en ArcGIS GeoAnalytics Server. El análisis se completa en su GeoAnalytics Server y los resultados se almacenan en su contenido en ArcGIS Enterprise.
Al ejecutar herramientas de GeoAnalytics Server, el análisis se completa en GeoAnalytics Server. Para obtener un rendimiento óptimo, haga que los datos estén disponibles para GeoAnalytics Server mediante capas de entidades alojadas en su portal de ArcGIS Enterprise o mediante recursos compartidos de archivos de big data. Los datos que no son locales para su GeoAnalytics Server se moverán a GeoAnalytics Server antes de que comience el análisis. Significa que ejecutar una herramienta tardará más tiempo y, en algunos casos, mover los datos de ArcGIS Pro a GeoAnalytics Server podría fallar. El umbral de error depende de la velocidad de su red, así como del tamaño y complejidad de los datos. Por lo tanto, se recomienda que siempre comparta sus datos o que cree un recurso compartido de archivos de big data.
Más información acerca del uso compartido de datos en el portal
Más información sobre cómo crear un archivo compartido de Big Data mediante Server Manager
Sintaxis
arcpy.geoanalytics.GeneralizedLinearRegression(input_features, dependent_variable, model_type, explanatory_variables, output_features_name, {generate_coefficient_table}, {input_features_to_predict}, {explanatory_variables_to_match}, {dependent_variable_mapping}, {data_store})
Parámetro | Explicación | Tipo de datos |
input_features | La capa que contiene las variables dependientes e independientes. | Record Set |
dependent_variable | El campo numérico que contiene los valores observados que se van a modelar. | Field |
model_type | Especifica el tipo de datos que se va a modelar.
| String |
explanatory_variables [explanatory_variables,...] | Una lista de campos que representan variables explicativas independientes en el modelo de regresión. | Field |
output_features_name | El nombre de la clase de entidad que se creará y contendrá las estimaciones y los residuales de la variable dependiente. | String |
generate_coefficient_table (Opcional) | Especifica si se generará una tabla de salida con valores de coeficiente (booleanos).
| Boolean |
input_features_to_predict (Opcional) | Una capa que contiene entidades que representan ubicaciones donde se realizarán los cálculos. Cada entidad en este dataset debe incluir valores para todas las variables explicativas especificadas. La variable dependiente para estas entidades se calculará con el modelo calibrado para los datos de la capa de entrada. | Record Set |
explanatory_variables_to_match [[Field from Prediction Locations, Field from Input Features],...] (Opcional) | Hace coincidir las variables explicativas del parámetro input_features_to_predict con las variables explicativas correspondientes del parámetro input_features, por ejemplo, [["LandCover2000", "LandCover2010"], ["Income", "PerCapitaIncome"]]. | Value Table |
dependent_variable_mapping [dependent_variable_mapping,...] (Opcional) | Dos cadenas que representan los valores utilizados para asignar 0 (ausencia) y 1 (presencia) para la regresión binaria. De forma predeterminada, se utilizarán 0 y 1. Por ejemplo, para predecir una detención con valores de campo Detener y No detener, introduciría No detener en Valor False (0) y Detener en Valor True (1). | Value Table |
data_store (Opcional) | Especifica el ArcGIS Data Store en el que se guardará la salida. La predeterminada es SPATIOTEMPORAL_DATA_STORE. Todos los resultados almacenados en un big data store espaciotemporal se almacenarán en WGS84. Los resultados almacenados en un data store relacional mantendrán su sistema de coordenadas.
| String |
Salida derivada
Nombre | Explicación | Tipo de datos |
output | El servicio de entidades de salida que contiene las estimaciones de variables dependientes para cada entidad de entrada. | Conjunto de registros |
output_predicted_features | Una capa de salida que contiene las variables de entrada y los valores explicativos predichos. | Conjunto de registros |
coefficient_table | Una tabla de salida con valores de coeficiente. | Conjunto de registros |
Muestra de código
El siguiente script independiente muestra cómo utilizar la herramienta GeneralizedLinearRegression.
En este script, crea un modelo y predice si se realizó una detención para delitos determinados.
# Name: GeneralizedLinearRegression.py
# Description: Run GLR on crime data and predict if an arrest was made for a crime reporting.
#
# Requirements: ArcGIS GeoAnalytics Server
# Import system modules
import arcpy
# Set local variables
trainingDataset = "https://analysis.org.com/server/rest/services/Hosted/old_crimes/FeatureServer/0"
predictionDataset = "https://analysis.org.com/server/rest/services/Hosted/new_crimes/FeatureServer/0"
outputTrainingName = "training"
# Execute GLR
arcpy.geoanalytics.GeneralizedLinearRegression(
trainingDataset, "ArrestMade", "BINARY", "CRIME_TYPE; WARD; DAY_OF_MONTH", outputTrainingName,
"NO_TABLE", predictionDataset, "CRIME_TYPE CRIME_TYPE;WARD WARD;DAY_OF_MONTH DAY_OF_MON",
"Arrest NoArrest", "SPATIOTEMPORAL_DATA_STORE")
Entornos
- Sistema de coordenadas de salida
El sistema de coordenadas que se usará para el análisis. El análisis se completará en el sistema de coordenadas de entrada salvo que este parámetro especifique otra opción. Para las GeoAnalytics Tools, los resultados finales se almacenarán en el data store espaciotemporal en WGS84.
Información de licenciamiento
- Basic: Requiere ArcGIS GeoAnalytics Server
- Standard: Requiere ArcGIS GeoAnalytics Server
- Advanced: Requiere ArcGIS GeoAnalytics Server