Resumen
Entidades de grupos basadas en atributos de entidad y restricciones espaciales o temporales opcionales.
Más información sobre cómo funciona Análisis de agrupamiento
Ilustración
Uso
-
Esta herramienta produce una clase de entidad de salida con los campos utilizados en el análisis, más un nuevo campo de tipo entero denominado SS_GROUP. La representación en pantalla predeterminada se basa en el campo SS_GROUP y muestra a qué grupo pertenece a cada entidad. Si indica que desea tres grupos, por ejemplo, cada registro tendrá un 1, 2 o 3 para el campo SS_GROUP. Cuando se selecciona NO_SPATIAL_CONSTRAINT para el parámetro Restricciones espaciales, la clase de entidad de salida también tendrá un nuevo campo binario llamado SS_SEED. El campo SS_SEED indica qué entidades se utilizaban como puntos de inicio para incrementar los grupos. El número de los valores que no son cero en el campo SS_SEED coincidirá con el valor que introdujo para el parámetro Número de grupos.
-
Esta herramienta creará opcionalmente un archivo de informe en PDF cuando especifique una ruta para el parámetro Archivo de informe de salida. Este informe contiene una serie de tablas y gráficos para ayudarle a entender las características de los grupos identificados. Al archivo de informe en formato PDF se puede a través de la ventana Resultados.
-
Cuando la Clase de entidad de entrada no está proyectada (es decir, cuando las coordenadas se especifican en grados, minutos y segundos) o cuando el sistema de coordenadas de salida está establecido en un Sistema de coordenadas geográficas, las distancias se calculan mediante mediciones de cuerda. Las mediciones de distancia de cuerda se utilizan porque se pueden calcular rápidamente y proporcionar muy buenas estimaciones de verdaderas distancias geodésicas, al menos para los puntos separados unos treinta grados entre sí. Las distancias de cuerda se basan en un esferoide oblato. Dados dos puntos en la superficie de la Tierra, la distancia de cuerda entre ellos es la longitud de una línea, que atraviesa la Tierra tridimensional, para conectar estos dos puntos. Las distancias de cuerda se informan en metros.
-
El Campo de Id. único proporciona una manera para vincular los registros en la Clase de entidad de salida de vuelta a los datos en la clase de entidad de entrada original. Por consiguiente, los valores de Campo de Id. único deben ser únicos para cada entidad y, por lo general, debe ser un campo permanente que se mantiene con la clase de entidad. Si no tiene un Campo de Id. único en el dataset, puede crear uno fácilmente al agregar un nuevo campo de entero a la tabla de clase de entidad y calcular los valores de campo para que sean iguales al campo FID/OID. No puede utilizar el campo FID/OID directamente para el parámetro Campo de Id. único.
-
Los Campos de análisis deben ser numéricos y deben contener una variedad de valores. Los ampos sin variación (es decir, el mismo valor para cada registro) se eliminarán de los análisis pero se incluirán en la Clase de entidad de salida. Los campos categóricos se pueden utilizar con la herramienta Análisis de agrupamiento si se representan como variables de simulación (un valor de uno para todas las entidades en una categoría y de ceros para el resto de entidades).
-
La herramienta Análisis de agrupamiento construirá grupos con o sin limitaciones de espacio o tiempo. Para algunas aplicaciones quizá no desee imponer la contigüidad u otros requisitos de proximidad a los grupos creados. En esos casos, puede establecer el parámetro Restricciones espaciales en NO_SPATIAL_CONSTRAINT.
-
Para algunos análisis, deseará que los grupos sean espacialmente contiguos. Las opciones de contigüidad están habilitadas para las clases de entidad poligonal e indican que las entidades solo pueden ser parte del mismo grupo si comparten un borde (CONTIGUITY_EDGES_ONLY) o si comparten un borde o un vértice (CONTIGUITY_EDGES_CORNERS) con otro miembro del grupo.
-
Las opciones DELAUNAY_TRIANGULATION y K_NEAREST_NEIGHBORS son apropiadas para las entidades de punto o poligonales cuando desea asegurarse de que todos los miembros del grupo son proximales. Estas opciones indican que una entidad solo será incluida en un grupo si al menos otra entidad es un vecino natural (Triangulación de Delaunay) o un Vecino más próximo. K es la cantidad de vecinos a considerar y se especifica mediante el parámetro Cantidad de vecinos.
-
Para crear grupos con limitaciones de espacio y de tiempo, utilice la herramienta Generar matriz de ponderaciones espaciales para crear primero un archivo de matriz de ponderaciones espaciales (.swm) que defina las relaciones de espacio-tiempo entre las entidades. A continuación, ejecute el Análisis de agrupamiento estableciendo el parámetro Restricciones espaciales en GET_SPATIAL_WEIGHTS_FROM_FILE y el parámetro Archivo de matriz de ponderaciones espaciales en el archivo SWM que ha creado.
-
Pueden imponerse Restricciones espaciales adicionales, como distancia fija, utilizando la herramienta Generar matriz de ponderaciones espaciales para crear primero un archivo SWM y, a continuación, proporcionar la ruta hacia ese archivo para el parámetro Archivo de matriz de ponderaciones espaciales.
-
La definición de una restricción espacial garantiza grupos compactos, contiguos o proximales. Incluyendo las variables espaciales en su lista de Campos de análisis también pueden promover estos atributos de grupo. Algunos ejemplos de variables espaciales serán la distancia a vías de acceso de la autovía, la accesibilidad a oportunidades de empleo, la proximidad a oportunidades de compra, medidas de conectividad e incluso coordenadas (X, Y). Las variables que representan tiempo, día de la semana o distancia temporal pueden fomentar la compactación temporal entre los miembros del grupo.
-
Cuando existe una patrón espacial claro para sus entidades (un ejemplo sería tres clústeres separados espacialmente distintos), puede complicar el algoritmo de agrupación restringido espacialmente. En consecuencia, el algoritmo de agrupamiento primero determina si existen grupos desconectados. Si el número de grupos desconectados es más grande que el Número de grupos especificado, la herramienta no puede resolver y fallará con un mensaje de error. Si el número de grupos desconectados es exactamente el mismo que el Número de grupos especificado, la configuración espacial de las entidades por si sola determina los resultados del grupo, como se muestra en (A) a continuación. Si el Número de grupos especificado es mayor que el número de grupos sin conexión, la agrupación comienza con los grupos desconectados ya establecidos. Por ejemplo, si hay tres grupos sin conexión y el Número de grupos especificado es 4, uno de los tres grupos se dividirá para crear un cuarto grupo, como se muestra en (B) a continuación.
-
En algunos casos, la herramienta Análisis de agrupación no podrá cumplir con las restricciones espaciales impuestas y algunas entidades no se incluirán en ninguno de los grupos (el valor SS_GROUP será -9999 con representación vacía en pantalla). Esto ocurre si hay entidades sin vecinos. Para evitarlo, utilice K_NEAREST_NEIGHBORS, que garantiza que todas las entidades tengan vecinos. Aumentar el parámetro Cantidad de vecinos ayudará a resolver problemas con grupos sin conexión.
-
Aunque hay una tendencia a querer incluir tantos Campos de análisis como sea posible, para esta herramienta funciona mejor comenzar con una variable única y construir. Los resultados son mucho más fáciles de interpretar con menos campos de análisis. También es más fácil determinar qué variables son los mejores discriminadores cuando hay menos campos.
-
Si selecciona NO_SPATIAL_CONSTRAINT para el parámetro Restricciones espaciales, tiene tres opciones para el Método de inicialización: FIND_SEED_LOCATIONS, GET_SEEDS_FROM_FIELD y USE_RANDOM_SEEDS. Los valores seed son las entidades utilizadas para cultivar los grupos individuales. Si, por ejemplo, introduce un 3 para el parámetro Número de grupos, el análisis comenzará con tres entidades seed. La opción predeterminada, FIND_SEED_LOCATIONS, selecciona aleatoriamente el primer seed y se asegura de que los siguientes valores seed que se seleccionan representan entidades que están lejos de los demás en el espacio de datos. Seleccionar los seed iniciales que capturan diferentes espacio de datos mejora el rendimiento. A veces, sabe que las entidades específicas reflejan distintas características que desea que se representen mediante los diferentes grupos. En ese caso, cree un campo seed para identificar esas características distintivas. El campo seed que crea debe tener ceros para todos, pero las entidades seed iniciales; las entidades seed iniciales tendrán un valor de 1. A continuación, seleccione GET_SEEDS_FROM_FIELD para el parámetro Método de inicialización. Si está interesado en hacer algún tipo de análisis de sensibilidad para ver las entidades que siempre se encuentran en el mismo grupo, puede seleccionar la opción USE_RANDOM_SEEDS para el parámetro Método de inicialización. Para esta opción, todas las entidades seed se seleccionan de forma aleatoria.
-
Los valores de 1 en el campo Campo de inicialización se interpretarán como seed. Si hay más entidades seed que Número de grupos, las entidades seed se selecciona de forma aleatoria de las identificadas por el Campo de inicialización. Si hay menos entidades seed de las especificadas por Número de grupos, las entidades seed adicionales se seleccionarán de manera que estén lejos (en el espacio de datos) de las identificadas por el Campo de inicialización.
-
A veces conoce el Número de grupos más adecuado para sus datos. En el caso que usted no lo conozca; sin embargo, es posible que tenga que probar diferentes números de grupos, anotando qué valores proporcionar la mejor diferenciación de grupo. Al activar el parámetro Evaluar número óptimo de grupos, una estadística pseudo F se calculará para agrupar soluciones con 2 a través de 15 grupos. Si no hay otros criterios que guíen su elección para Número de grupos, utilice un número asociado con uno de los mayores valores de estadística F pseudo. Los valores de índice estadístico F más grandes, indican soluciones que funcionan mejor para la maximización de las similitudes dentro del grupo y las diferencias entre el grupo. Cuando se especifica un Archivo de informe de salidaopcional, que el informe en PDF incluirá un gráfico que muestra los valores de estadística F para soluciones con 2 a través de 15 grupos.
-
Independientemente del Número de grupos que especifique, la herramienta se detendrá si la división entre grupos adicionales pasa a ser arbitraria. Supongamos, por ejemplo, que los datos constan de tres polígonos agrupados espacialmente y de un campo de un solo análisis. Si todas las entidades del clúster tienen el mismo valor de campo de análisis, la forma en que uno de los clústeres individuales se dividirá una vez creados los tres grupos pasará a ser arbitraria. Si especifica más de tres grupos en este caso, la herramienta seguirá creando solamente tres grupos. Siempre que al menos uno de los campos de análisis de un grupo tenga valores distintos, la división entre grupos adicionales podrá continuar.
-
Cuando se incluye una restricción de espacio-tiempo o espacial en su análisis, las estadísticas F pseudo son comparables (mientras las Entidades de entrada y Campos de análisis no cambian). Por consiguiente, puede utilizar los valores de estadística F para determinar no solo un Número de grupos óptimo, sino también para tomar decisiones sobre la opción Restricciones espaciales más efectiva, el Método de distancia y la Cantidad de vecinos.
-
El algoritmo de valor medio K utilizado para las entidades de partición en grupos cuando se selecciona NO_SPATIAL_CONSTRAINT para el parámetro Restricciones espaciales y se selecciona FIND_SEED_LOCATIONS o USE_RANDOM_SEEDS para el Método de inicialización incorpora heurísticas y puede devolver un resultado diferente cada vez que ejecuta la herramienta (incluso utilizando los mismos datos y los mismos parámetros de la herramienta). Esto se debe a que hay un componente aleatorio para encontrar las entidades seed iniciales utilizadas para aumentar los grupos.
-
Cuando se impone una restricción espacial no hay un componente aleatorio para el algoritmo, de modo que un pseudo índice estadístico F se puede calcular para los grupos 2 a 15, y los valores más altos del índice estadístico F se pueden utilizar para determinar el Número de grupos óptimo para el análisis. Esto se debe a que la opción NO_SPATIAL_CONSTRAINT es una solución heurística; sin embargo, determinar el número óptimo de grupos es más complejo. La estadística F, puede ser diferente cada vez que se ejecuta la herramienta, debido a distintas entidades seed iniciales. Cuando un patrón distinto existe en los datos; sin embargo, las soluciones de una ejecución a la siguiente serán más coherentes. Por consiguiente, para ayudar a determinar el número óptimo de grupos cuando se selecciona la opción NO_SPATIAL_CONSTRAINT, la herramienta resuelve el análisis de agrupación 10 veces para 2, 3, 4 y hasta 15 grupos. A continuación, se notifica la información sobre la distribución de estas 10 soluciones (mínimo, máximo, medio y mediana) para ayudarle a determinar un número óptimo de grupos para su análisis.
-
La herramienta Análisis de agrupamiento devuelve tres valores de salida derivados para uso potencial en modelos y scripts personalizados. Estos son los pseudoelementos de estadística F para el Número de grupos (Output_FStat), la mayor estadística F pseudo para grupos 2 a través de 15 (Max_FStat) y el número de grupos asociados con el mayor valor de estadística F pseudo (Max_FStat_Group). Cuando no elige Evaluar número óptimo de grupos, todas las variables de salida derivadas se establecen en None.
-
El número de grupo asignado a un conjunto de entidades puede cambiar de una ejecución a la siguiente. Por ejemplo, supongamos que divide las entidades en dos grupos basados en una variable de ingresos. La primera vez que ejecuta el análisis puede ver las entidades de ingresos altos etiquetadas como grupo 2 y las entidades de ingresos bajos etiquetadas como grupo 1; la segunda vez que ejecute el mismo análisis, las entidades de ingresos altos pueden estar etiquetadas como grupo 1. También podría ver que algunas de las entidades de ingresos medios cambian la pertenencia a un grupo de una ejecución a otra cuando se especifica NO_SPATIAL_CONSTRAINT.
-
Si bien puede seleccionar crear un gran número de diferentes grupos, en la mayoría de los escenarios probablemente tendrá que dividir entidades en unos pocos grupos. Porque los gráficos y mapas resultan difíciles de interpretar con muchos grupos, ningún informe se crea cuando se introduce un valor mayor que 15 para el parámetro Número de grupos o selecciona más de 15 Campos de análisis. Sin embargo, puede aumentar este límite sobre el número máximo de grupos.
-
Esta herramienta creará opcionalmente un informe en PDF que resume los resultados. Los archivos PDF no aparecen automáticamente en la ventana Catálogo. Si desea que los archivos PDF se muestren en el Catálogo, abra la aplicación ArcCatalog, seleccione la opción de menú Personalizar, haga clic en Opciones de ArcCatalog y seleccione la pestaña Tipos de archivo. Haga clic en el botón Nuevo tipo y especifique PDF, según se muestra abajo, para Extensión de archivo.
-
En los equipos configurados con los paquetes de idiomas de ArcGIS para árabe y otros idiomas que se escriben de derecha a izquierda, es posible que observe que falta texto o que detecte problemas de formato en el PDF Archivo de informe de salida. Estos problemas se analizan en este artículo.
-
Para obtener más información sobre el Archivo de informe de salida, consulte Más información sobre cómo funciona Análisis de agrupamiento.
Sintaxis
arcpy.stats.GroupingAnalysis(Input_Features, Unique_ID_Field, Output_Feature_Class, Number_of_Groups, Analysis_Fields, Spatial_Constraints, {Distance_Method}, {Number_of_Neighbors}, {Weights_Matrix_File}, {Initialization_Method}, {Initialization_Field}, {Output_Report_File}, {Evaluate_Optimal_Number_of_Groups})
Parámetro | Explicación | Tipo de datos |
Input_Features | La clase de entidad o capa de entidades para las que desea crear grupos. | Feature Layer |
Unique_ID_Field | Un campo de entero que contiene un valor diferente para cada entidad en la clase de entidad de entrada. Si no tiene un campo de Id. único, puede crear uno agregando un campo de tipo entero a la tabla de clases de entidad y calculando los valores de campo para que equivalgan a los campos FID o OBJECTID. | Field |
Output_Feature_Class | La nueva clase de entidad de salida creada que contiene todas las entidades, los campos de análisis especificados y un campo que indica a qué grupo pertenece cada entidad. | Feature Class |
Number_of_Groups | El número de grupos a crear. El parámetro Informe de salida estará deshabilitado para más de 15 grupos. | Long |
Analysis_Fields [analysis_field,...] | Una lista de los campos que desea utilizar para distinguir a un grupo de otro. El parámetro Informe de salida estará deshabilitado para más de 15 campos. | Field |
Spatial_Constraints | Especifica si y cómo las relaciones espaciales entre entidades deben restringir los grupos creados.
| String |
Distance_Method (Opcional) | Especifica cómo se calculan las distancias desde cada entidad hasta las entidades vecinas.
| String |
Number_of_Neighbors (Opcional) | Este parámetro puede especificarse siempre que el parámetro Spatial_Constraints sea K_NEAREST_NEIGHBORS o uno de los métodos de contigüidad (CONTIGUITY_EDGES_ONLY o CONTIGUITY_EDGES_CORNERS). El número predeterminado de vecinos es 8 y no puede ser menor que 2 para K_NEAREST_NEIGHBORS. Este valor refleja el número exacto de vecinos más cercanos candidatos que se debe tener en cuenta a la hora de crear grupos. Una entidad no se incluirá en un grupo a menos que una de las demás entidades en este grupo sea un vecino más próximo. El valor predeterminado para CONTIGUITY_EDGES_ONLY y CONTIGUITY_EDGES_CORNERS es 0. En los métodos de contigüidad, este valor refleja la cantidad mínima de posibles vecinos a considerar. Los vecinos cercanos adicionales para entidades que tengan un valor inferior al especificado en Number_of_Neighbors se basarán en la proximidad al centroide de la entidad. | Long |
Weights_Matrix_File (Opcional) | La ruta a un archivo que contiene las ponderaciones espaciales que definen las relaciones espaciales entre las entidades. | File |
Initialization_Method (Opcional) | Especifica cómo se obtienen seeds iniciales cuando el parámetro Spatial_Constraint seleccionado es NO_SPATIAL_CONSTRAINT. Los seeds se utilizan para aumentar los grupos. Si indica que desea tres grupos, por ejemplo, el análisis comenzará con tres seeds.
| String |
Initialization_Field (Opcional) | El campo numérico identifica entidades seed. Las entidades con un valor de 1 para este campo se utilizarán para grupos de aumento. | Field |
Output_Report_File (Opcional) | La ruta de acceso completa para el archivo de informe PDF se creará resumiendo las características de grupo. Este informe ofrece una serie de gráficos para ayudarle a comparar las características de cada grupo. Crear el archivo de informe puede agregar tiempo de procesamiento sustancial. | File |
Evaluate_Optimal_Number_of_Groups (Opcional) |
| Boolean |
Salida derivada
Nombre | Explicación | Tipo de datos |
Output_FStat | La pseudo estadística F. | Doble |
Max_FStat_Group | El número de grupos asociados con el mayor valor de pseudo estadística F | Doble |
Max_FStat | La pseudo estadística F más grande para los grupos 2-15. | Doble |
Muestra de código
Ejemplo 1 GroupingAnalysis 1 (ventana de Python)
El siguiente script de la ventana de Python muestra cómo utilizar la herramienta GroupingAnalysis.
import arcpy
import arcpy.stats as SS
arcpy.env.workspace = r"C:\GA"
SS.GroupingAnalysis("Dist_Vandalism.shp", "TARGET_FID", "outGSF.shp", "4",
"Join_Count;TOTPOP_CY;VACANT_CY;UNEMP_CY",
"NO_SPATIAL_CONSRAINT", "EUCLIDEAN", "", "",
"FIND_SEED_LOCATIONS", "", "outGSF.pdf", "DO_NOT_EVALUATE")
Ejemplo 2 de GroupingAnalysis (script independiente)
El siguiente script de Phython independiente muestra cómo utilizar la herramienta GroupingAnalysis.
# Grouping Analysis of Vandalism data in a metropolitan area
# using the Grouping Analysis Tool
# Import system modules
import arcpy
import arcpy.stats as SS
# Set geoprocessor object property to overwrite existing output, by default
arcpy.env.overwriteOutput = True
try:
# Set the current workspace (to avoid having to specify the full path to
# the feature classes each time)
arcpy.env.workspace = r"C:\GA"
# Join the 911 Call Point feature class to the Block Group Polygon feature class
# Process: Spatial Join
fieldMappings = arcpy.FieldMappings()
fieldMappings.addTable("ReportingDistricts.shp")
fieldMappings.addTable("Vandalism2006.shp")
sj = arcpy.SpatialJoin_analysis("ReportingDistricts.shp", "Vandalism2006.shp", "Dist_Vand.shp",
"JOIN_ONE_TO_ONE",
"KEEP_ALL",
fieldMappings,
"COMPLETELY_CONTAINS")
# Use Grouping Analysis tool to create groups based on different variables
# or analysis fields
# Process: Group Similar Features
ga = SS.GroupingAnalysis("Dist_Vand.shp", "TARGET_FID", "outGSF.shp", "4",
"Join_Count;TOTPOP_CY;VACANT_CY;UNEMP_CY",
"NO_SPATIAL_CONSRAINT", "EUCLIDEAN", "", "", "FIND_SEED_LOCATIONS", "",
"outGSF.pdf", "DO_NOT_EVALUATE")
# Use Summary Statistic tool to get the Mean of variables used to group
# Process: Summary Statistics
SumStat = arcpy.Statistics_analysis("outGSF.shp", "outSS", "Join_Count MEAN; \
VACANT_CY MEAN;TOTPOP_CY MEAN;UNEMP_CY MEAN",
"GSF_GROUP")
except arcpy.ExecuteError:
# If an error occurred when running the tool, print out the error message.
print(arcpy.GetMessages())
Entornos
- Sistema de coordenadas de salida
- Transformaciones geográficas
- Espacio de trabajo actual
- Espacio de trabajo temporal
- Nombres de campos calificados
- La salida tiene valores M
- Resolución M
- Tolerancia M
- La salida tiene valores Z
- Valor Z de salida predeterminado
- Resolución Z
- Tolerancia Z
- Resolución XY
- Tolerancia XY
- Generador de números aleatorios
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí
Temas relacionados
- Modelado de relaciones espaciales
- ¿Qué es una puntuación z? ¿Qué es un valor P?
- Ponderaciones espaciales
- Vista general del conjunto de herramientas Asignación de clusters
- Autocorrelación espacial (I de Moran)
- Cómo funciona Análisis de agrupamiento
- Búsqueda de similitud
- Distribución direccional (Elipse de desviación estándar)