Resumen
Mide patrones locales de asociación espacial, o colocación, entre dos categorías de entidades de puntos con la estadística de cociente de colocación.
Ilustración
Uso
Esta herramienta solo acepta entidades de puntos. Las categorías que desea analizar se pueden encontrar en el mismo dataset o en dos separados. También puede utilizar dos datasets separados para considerarlos categorías. Por ejemplo, es posible que tenga un dataset de puntos con diversos tipos de restaurantes que solo se considerará de la categoría RESTAURANTES y otro dataset de puntos con varios tipos de delitos que solo se considerará de la categoría DELITOS.
Para cada entidad de la Categoría de interés, la herramienta determinará si las entidades de la Categoría vecina están más o menos presentes en su vecindad en comparación con la distribución espacial general de las categorías. Por ejemplo, para cada entidad de categoría A, un valor resultante de cociente de colocación local (LCLQ) de 1 significa que es tan probable que tenga la categoría B como vecino como cabe esperar. Un valor LCLQ mayor que 1 significa que tiene mayor probabilidad (que lo aleatorio) de tener B como vecino, y un valor LCLQ menor que 1 significa que la entidad de categoría A tiene menor probabilidad de tener un punto de categoría B como vecino (que una distribución aleatoria).
Nota:
La relación de colocación de este análisis no es simétrica. Los valores de cociente de colocación calculados al comparar la categoría A con la categoría B serán distintos de los valores de cociente de colocación calculados al comparar la categoría B con la A.
Además, si cuenta con la categoría C en su vecindad, los cocientes de colocación resultantes no serán los mismo que si solo tenía las categorías A y B. En función de lo que pregunte, puede que sea importante crear un subconjunto de los datos para incluir solo las categorías A y B. Sin embargo, al crear un subconjunto, pierde información sobre el resto de categorías presentes. Seleccionar y crear un subconjunto de los datos es importante si sabe con certeza que la ocurrencia de una categoría no se ve afectada en absoluto por la ocurrencia de otra.
Las relaciones espaciales se pueden definir con una Banda de distancia, K vecinos más cercanos, o bien un archivo de matriz de ponderaciones espaciales mediante el parámetro Tipo de vecindad.
Puede analizar sus datos con ventanas de espacio-tiempo si especifica los parámetros Campo de tiempo de interés, Campo de tiempo de categorías vecinas y Tipo de relación temporal. Gracias a las ventanas de espacio-tiempo puede controlar las entidades que se incluyen en la vecindad analizada. Las entidades que están cercanas en el espacio y el tiempo se analizarán juntas, ya que todas las relaciones entre entidades se evalúan respecto a la ubicación y la marca de tiempo de la entidad de destino. También puede especificar si la herramienta busca entidades antes o después de la entidad de destino, o también puede crear un periodo de tiempo durante el cual la herramienta buscará entidades antes y después de la entidad de destino que se analiza.
El parámetro Número de permutaciones se utiliza para calcular valores P. Elegir el número de permutaciones es un equilibrio entre la precisión y un mayor tiempo de procesamiento. Mientras que el valor predeterminado de permutaciones es 99, se recomienda que aumente el número para los resultados finales del análisis.
También se puede calcular un cociente de colocación global especificando una ruta para el parámetro Tabla de salida para relaciones globales. Esta tabla contiene cocientes de colocación, para que pueda analizar las medidas de la asociación espacial entre todas las categorías de su dataset. De esta manera, puede explorar otras relaciones en los datos, puesto que puede encontrar otras categorías firmemente colocadas globalmente. Si, en efecto, encuentra otras categorías firmemente colocadas, puede extender su análisis bien explorando la naturaleza local de esa relación ejecutando de nuevo la herramienta con esas categorías de interés, o bien ejecutando de nuevo la herramienta eliminando esas categorías del análisis si cree que las categorías firmemente colocadas introducen un sesgo innecesario en los resultados.
La salida de esta herramienta es un mapa que muestra todas las Entidades de entrada de interés simbolizadas en función de si estaban colocadas significativamente o aisladas de las Entidades vecinas de entrada. La herramienta agrega campos a las Entidades de salida incluido el cociente de colocación local calculado, valor P, bin LCLQ utilizado para la simbolización y el tipo de LCLQ. Se puede especificar una Tabla de salida para relaciones globales que indicará los cocientes de colocación globales entre todas las categorías del Campo de interés y todas las categorías presentes en el Campo que contiene la categoría vecina.
Esta herramienta admite el procesamiento en paralelo y utiliza el 50 por ciento de los procesadores disponibles de forma predeterminada. El número de procesadores puede aumentar o disminuir usando el entorno Factor de procesamiento en paralelo.
Sintaxis
ColocationAnalysis(input_type, in_features_of_interest, output_features, {field_of_interest}, {time_field_of_interest}, {category_of_interest}, {input_feature_for_comparison}, {field_for_comparison}, {time_field_for_comparison}, {category_for_comparison}, neighborhood_type, {number_of_neighbors}, {distance_band}, {weights_matrix_file}, {temporal_relationship_type}, {time_step_interval}, {number_of_permutations}, {local_weighting_scheme}, {output_table})
Parámetro | Explicación | Tipo de datos |
input_type | Especifica si las in_features_of_interest provendrán del mismo dataset con categorías especificadas, distintos datasets con categorías especificadas o distintos datasets que se considerarán su propia categoría (por ejemplo, un dataset cuyos puntos representan guepardos y un segundo dataset cuyos puntos representan gacelas).
| String |
in_features_of_interest | La clase de entidad con puntos con categorías representativas. | Feature Layer |
output_features | La clase de entidad de salida que contiene todas las in_features con campos que representan la puntuación del cociente de colocación local y valores P. | Feature Class |
field_of_interest (Opcional) | El campo que contiene las categorías a analizar. | Field |
time_field_of_interest (Opcional) | Un campo de fecha con una marca de tiempo opcional para cada entidad a fin de analizar puntos con una ventana de espacio-tiempo. Las entidades cercanas en el espacio y el tiempo se considerarán vecinas y se analizarán juntas. | Field |
category_of_interest (Opcional) | La categoría base para el análisis. La herramienta determinará, para cada category_of_interest, el grado de atracción o colocación de la categoría base en relación con la neighboring_category. | String |
input_feature_for_comparison (Opcional) | La clase de entidad de entrada que contiene los puntos con las categorías que se compararán. | Feature Layer |
field_for_comparison (Opcional) | El campo de las input_feature_for_comparison con la categoría que se va a comparar. | Field |
time_field_for_comparison (Opcional) | Un campo de fecha con una marca de tiempo para cada entidad a fin de analizar los puntos con una ventana de espacio-tiempo. Las entidades cercanas en el espacio y el tiempo se considerarán vecinas y se analizarán juntas. | Field |
category_for_comparison (Opcional) | La categoría vecina para el análisis. La herramienta determinará el grado de atracción o aislamiento de la category_of_interest en relación con la category_for_comparison. | String |
neighborhood_type | Especifica cómo se definen las relaciones espaciales entre las entidades.
| String |
number_of_neighbors (Opcional) | El número de vecinos alrededor de cada entidad que se utilizará para probar relaciones locales entre categorías. Si se deja en blanco, el valor predeterminado es 8. El valor proporcionado debe ser lo suficientemente alto como para detectar las relaciones entre entidades, pero lo suficientemente bajo como para seguir identificando patrones locales. | Long |
distance_band (Opcional) | El tamaño de vecindario es una distancia fija o constante para cada entidad. Todas las entidades dentro de esta distancia se utilizarán para probar relaciones locales entre categorías. Si se deja en blanco, la distancia utilizada será la distancia media en la que cada entidad tenga al menos ocho vecinos. | Linear Unit |
weights_matrix_file (Opcional) | La ruta a un archivo que contenga los pesos que definen las relaciones espaciales, y potencialmente temporales entre las entidades. | File |
temporal_relationship_type (Opcional) | Especifica cómo se definen las relaciones temporales entre las entidades.
| String |
time_step_interval (Opcional) | Un entero y una unidad de medida que representa el número de unidades de tiempo que componen la ventana de tiempo. | Time Unit |
number_of_permutations (Opcional) | Este análisis utiliza permutaciones para crear una distribución de referencia. Elegir el número de permutaciones es un equilibrio entre la precisión y un mayor tiempo de procesamiento. Elija su preferencia de velocidad frente a precisión. Los resultados más sólidos y precisos tardan más en calcularse.
| Long |
local_weighting_scheme (Opcional) | Especifica el tipo kernel que se usará para proporcionar la ponderación espacial. El kernel define cómo se relacionan las entidades entre sí dentro de su vecindad.
| String |
output_table (Opcional) | Cuando se especifica un valor para este parámetro, se genera una tabla para mostrar los cocientes de colocación globales entre todas las categorías del Campo de interés y todas las categorías del Campo que contiene la categoría vecina. Es posible utilizar esta tabla de manera exploratoria para ayudarle a determinar las categorías locales a analizar. Si se utilizan Datasets sin categorías como el Tipo de entrada, se calculan cocientes de colocación globales para cada dataset con respecto a los demás y a sí mismos. | Table |
Muestra de código
Los siguientes scripts de la ventana de Python muestran cómo utilizar la función ColocationAnalysis.
import arcpy
arcpy.env.workspace = r"C:\Analysis"
# Two categories from the same categorical field.
# Find the colocation of elementary schools and middle schools
arcpy.stats.ColocationAnalysis("SINGLE_DATASET", r"Colocation.gdb\Schools",
r"Outputs.gdb\School_Colocation", "Facility_Type", None,
"Elementary", None, None, None, "Middle", "K_NEAREST_NEIGHBORS",
8, None, None, "BEFORE", None, 99, "BISQUARE",
r"Outputs.gdb\Global_School_Colocation")
# Categories from different datasets without categories
# Find the colocation of elementary schools and hospitals
arcpy.stats.ColocationAnalysis("DATASETS_WITHOUT_CATEGORIES", r"Colocation.gdb\Schools",
r"Outputs.gdb\Schools_Hospitals", None, None, '',
r"Colocation.gdb\Hospitals", None, None, '', "DISTANCE_BAND",
None, "30 Kilometers", None, "BEFORE", None, 199, "GAUSSIAN",
None)
# Categories from two datasets
# Find the colocation of elementary schools and hospitals
arcpy.stats.ColocationAnalysis("TWO_DATASETS", r"Colocation.gdb\Schools",
r"Outputs.gdb\Elementary_Hospitals", "Facility_Type", None,
"Elementary", r"Colocation.gdb\Hospitals", None, None, '',
"K_NEAREST_NEIGHBORS", 15, None, None, "BEFORE", None, 499,
"NONE", None)
El siguiente script independiente de Python muestra cómo utilizar la función ColocationAnalysis.
# Analyze the spatial relationship (colocation) between elementary school locations and hospital locations
# Two categories from the same categorical field.
# Find the colocation of elementary schools and middle schools
intype = "SINGLE_DATASET"
infc_interest = r"Colocation.gdb\Schools"
outfc = r"Outputs.gdb\School_Colocation"
field_interest = "Facility_Type"
time_field = ""
cat_interest = "Elementary"
infc_neigh = ""
field_neigh = ""
time_field_neigh = ""
cat_neigh = "Middle"
neighborhood_type = "K_NEAREST_NEIGHBORS"
num_neighbors = 8
dist_band = ""
swm_file = ""
temporal_type = ""
time_step_interval = ""
num_permutation = 99
weighting_scheme ="BISQUARE"
out_global_tbl = r"Outputs.gdb\Global_School_Colocation"
arcpy.stats.ColocationAnalysis(intype, infc_interest, outfc, field_interest,
time_field, cat_interest, infc_neigh, field_neigh,
time_field_neigh, cat_neigh, neighborhood_type,
num_neighbors, dist_band, swm_file, temporal_type,
time_step_interval num_permutation, weighting_scheme,
out_global_tbl)
# Categories from different datasets without categories
# Find the colocation of schools and hospitals
intype = "DATASETS_WITHOUT_CATEGORIES"
infc_interest = r"Colocation.gdb\Schools"
outfc = r"Outputs.gdb\Schools_Hospitals"
field_interest = ""
time_field = ""
cat_interest = ""
infc_neigh = r"Colocation.gdb\Hospitals"
field_neigh = ""
time_field_neigh = ""
cat_neigh = ""
neighborhood_type = "DISTANCE_BAND"
num_neighbors = ""
dist_band = "30 Kilometers"
swm_file = ""
temporal_type = ""
time_step_interval = ""
num_permutation = 199
weighting_scheme ="GAUSSIAN"
out_global_tbl = ""
arcpy.stats.ColocationAnalysis(intype, infc_interest, outfc, field_interest,
time_field, cat_interest, infc_neigh, field_neigh,
time_field_neigh, cat_neigh, neighborhood_type,
num_neighbors, dist_band, swm_file, temporal_type,
time_step_interval num_permutation, weighting_scheme,
out_global_tbl)
# Categories from two datasets
# Find the colocation of elementary schools and hospitals
intype = "TWO_DATASETS"
infc_interest = r"Colocation.gdb\Schools"
outfc = r"Outputs.gdb\Elementary_Hospitals"
field_interest = "Facility_Type"
time_field = ""
cat_interest = "Elementary"
infc_neigh = r"Colocation.gdb\Hospitals"
field_neigh = ""
time_field_neigh = ""
cat_neigh = ""
neighborhood_type = "K_NEAREST_NEIGHBORS"
num_neighbors = 15
dist_band = ""
swm_file = ""
temporal_type = ""
time_step_interval = ""
num_permutation = 499
weighting_scheme ="NONE"
out_global_tbl = ""
arcpy.stats.ColocationAnalysis(intype, infc_interest, outfc, field_interest,
time_field, cat_interest, infc_neigh, field_neigh,
time_field_neigh, cat_neigh, neighborhood_type,
num_neighbors, dist_band, swm_file, temporal_type,
time_step_interval num_permutation, weighting_scheme,
out_global_tbl)
Entornos
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí