Las relaciones se utilizan para unir atributos de dos o más datasets basándose en campos o ubicaciones comunes. Las relaciones se pueden utilizar para agregar atributos desde una tabla de referencia a otro dataset; para combinar atributos de dos datasets y permitir así diversos tipos de análisis; y para habilitar la ubicación en tablas no espaciales.
Para crear una relación en ArcGIS Insights, debe agregar a su página dos datasets compatibles o más con campos comunes.
Acerca de las relaciones
Insights le permite unir datos de dos o más datasets usando un campo o una ubicación comunes en la ventana Crear relaciones. Por ejemplo, puede asociar un dataset de transacciones de ventas con un dataset que contenga información sobre las tiendas identificando un campo común (por ejemplo, número de tienda). El campo común identifica las filas de cada dataset que se unirán entre sí, y el tipo de relación determina las filas que se conservan en el dataset unido.
Estos son los cuatro tipos de relaciones que puede utilizar para unir sus datasets:
- Interior
- Todo (unión externa completa)
- Izquierda (unión externa izquierda)
- Derecha (unión externa derecha)
Nota:
Se crearán uniones espaciales (uniones con campos de ubicación) utilizando Interseca como relación espacial. Sin embargo, puede seleccionar Interna, Toda, Izquierda o Derecha como el tipo de relación.
El dataset unido se muestra como dataset de resultados en el panel de datos. El dataset unido le permite expandir su análisis utilizando los datos de todos los datasets unidos como una sola capa.
En el contexto de un dataset unido, cardinalidad se refiere a las relaciones entre datasets. En la ventana Crear relaciones tómese tiempo para considerar la cardinalidad entre los datasets, que puede ser de uno a uno, de muchos a uno o de muchos a muchos. La cardinalidad no afecta al tipo de relación que crea, pero sí tiene implicaciones para los campos que pueda querer agregar al dataset unido o para el campo que elija mostrar en el mapa.
Insights también sugiere un campo común cuando elige los datasets que desea unir. Si no se sugiere ningún campo, puede seleccionar los campos que desea utilizar para la relación.
Datos compatibles
Puede usar los siguientes tipos de datos para crear relaciones:
- Capas de entidades alojadas
- Archivos agregados a su libro de trabajo
- Datasets de una conexión de base de datos (disponibles en Insights in ArcGIS Enterprise e Insights desktop)
- Datasets de resultados del análisis espacial, incluidos los resultados de tipos de datos no compatibles
Al crear relaciones no se admiten consultas de definición en los servicios de entidades. Los datos de su libro de trabajo que no se admitan en las relaciones estarán deshabilitados en la ventana Crear relaciones.
Nota:
No se pueden crear relaciones con capas de entidades remotas, como capas de ArcGIS Living Atlas.
Los datasets de base de datos deben provenir de la misma base de datos e instancia para que sean compatibles para la unión. Otros datasets deben almacenarse en el mismo data store para unirse.
Si sus datasets no son compatibles para la unión o están almacenados en data stores separados, puede copiar los datasets a su libro de trabajo y utilizar los datasets copiados para crear la relación.
Crear una relación
Para saber cómo crear una relación para unir datasets, puede seguir los pasos siguientes o seguir un caso de uso de muestra que le guíe durante el proceso, incluidas las descripciones y los resultados para cada tipo de relación.
- Haga clic en el botón Crear relaciones que se encuentra sobre el panel de datos.
Se muestra la ventana Crear relaciones con una lista de datasets para su página actual en Mis datos.
- En Mis datos, haga clic en uno o varios datasets que desee unir.
Nota:
Si tiene pensado utilizar los tipos de relación Izquierda o Derecha, asegúrese de que el dataset que debe estar a la izquierda o a la derecha está en el sitio que desea. El dataset que elija primero aparecerá a la izquierda cuando lo agregue a la página.Sugerencia:
Es aconsejable colocar el dataset que tiene el nivel de detalle más preciso (el más granular) a la izquierda. Para el caso de uso de muestra descrito a continuación, el dataset de StoreTransactions debería estar a la izquierda.
Cuando selecciona el primer dataset, la vista se actualiza para mostrar solamente aquellos datasets que son elegibles para una relación.
Insights analiza los datasets que ha agregado y sugiere un campo para utilizarlo en la unión según el tipo de datos que contiene el campo y el nombre del campo. Si se sugiere un campo, las vistas en miniatura que representan cada dataset se unen utilizando una línea y el campo sugerido aparece en cada vista en miniatura.
- Realice una de las siguientes acciones:
- Si el campo sugerido es aceptable y desea utilizar el tipo de relación predeterminado (Interna), vaya al paso final.
- Si desea utilizar otro campo, agregar otro campo para unir o elegir otro tipo de relación, continúe con el paso siguiente.
- Si no se pudo detectar ningún campo común, aparece una línea entre las vistas en miniatura del dataset y se abre la ventana Crear relación, donde podrá elegir los campos comunes. Continúe en el paso 5.
- Para editar las propiedades de la relación como, por ejemplo, elegir otro campo, agregar otros campos para unir o cambiar el tipo de relación, haga clic en el botón Editar relación en la línea de relación que conecta las vistas en miniatura del dataset.
- Elija otro campo en uno o varios datasets, o elija un tipo de relación diferente y cierre o haga clic fuera del cuadro de diálogo de propiedades de la relación.
- Opcional: si la relación requiere una clave compuesta, puede agregar campos adicionales utilizando el botón Agregar campos situado en Elegir campos.
Por ejemplo, si va a unir CityName con CityName, debería especificar también el condado, el estado y el país, porque los valores de CityName están duplicados en el dataset.
- Realice una de las siguientes acciones:
- Haga clic en Finalizar (en la parte inferior derecha) para continuar con la relación.
- Haga clic en Quitar relación para deshacer la relación actual.
Al hacer clic en Finalizar, se cierra la vista Crear relaciones. Se agrega al panel de datos un dataset de resultados con los datos unidos.
Caso de uso de muestra
En esta sección se describe un caso de uso de muestra en el que se indica cómo puede crear una relación entre dos datasets para responder a preguntas específicas y cómo afecta cada tipo de relación a los datos del dataset unido.
Las preguntas son las siguientes:
- ¿Cuáles son los ingresos de las ventas por tienda?
- ¿Dónde está ubicada en la ciudad la tienda con el rendimiento bruto más alto?
Existen dos datasets en la página del libro de trabajo que pueden ayudar a responder a estas preguntas. El primero es la siguiente tabla de Excel donde se muestran las transacciones de tres tiendas:
OrderID | StoreID | TotalAmount | PaymentMethod |
---|---|---|---|
1204 | 1 | $91,48 | Crédito |
1295 | 1 | $103,86 | Crédito |
1316 | 3 | $97,81 | Débito |
1406 | 2 | $103,24 | Crédito |
1421 | 2 | $44,95 | Efectivo |
1426 | 2 | $153,71 | Débito |
1454 | 3 | $168,95 | Crédito |
El dataset de StoreTransactions por sí solo podría proporcionar un resumen de TotalAmount por StoreID (si cambia StoreID a un campo de cadena de caracteres y crea un gráfico de barras), pero se prefiere un informe en el que se muestre TotalAmount por nombre de tienda para mayor claridad si los resultados del análisis se van a compartir con equipos repartidos por toda la organización.
Además, el dataset de StoreTransactions no puede mostrar las ubicaciones de las tiendas en un mapa.
El segundo es una capa de entidades que muestra las seis ubicaciones de tiendas siguientes:
StoreID | StoreName |
---|---|
1 | Baskets and Cases |
2 | Toys! Toys! Toys! |
3 | Robert's Plants |
4 | Aisha's Bookstore and Coffee Shop |
5 | Gadgets and Gizmos |
6 | Sally's Hardware and Construction |
Estos datasets realizan un seguimiento de los datos en dos niveles de detalle diferentes. El primer dataset realiza un seguimiento de los datos en el nivel de transacción, que es un nivel más detallado que la segunda tabla, que realiza un seguimiento de los datos en el nivel de tienda.
Como resultado, verá registros (filas) duplicados en la columna StoreID de StoreTransactions, mientras que StoreLocations solo tiene registros únicos en la columna StoreID. Existen muchas transacciones por tienda. Esto es lo que se conoce como una relación de muchos a uno, un tipo concreto de cardinalidad entre los datasets.
Si observamos estos datos, es evidente que StoreID es el mejor campo que se puede utilizar para crear una relación entre estos dos datasets.
Para responder a las preguntas de este caso de uso, debe hacer lo siguiente:
- Considerar el efecto que cada tipo de relación tiene en el dataset unido resultante.
- Siga las instrucciones de Crear una relación (arriba) para crear la relación que funcione mejor para los datasets de entrada.
- Visualice los datos unidos para responder a las preguntas.
- Utilizando los campos StoreName y TotalAmount del dataset unido, cree un gráfico de barras o una tabla de resumen para agregar los campos. Las ventas se agregan por cada nombre de tienda.
- Cree un mapa de símbolo graduado con el campo TotalAmount.
Tipos de relación
El tipo de relación que utilice, junto con el campo común que elija, determina los registros que conserva en el dataset unido. En las subsecciones siguientes se muestra el aspecto que tiene el dataset unido por tipo de relación.
Tipo de relación Interna
Si utilizó el tipo de relación predeterminada cuando siguió los pasos de Crear una relación (arriba), el dataset unido utiliza el tipo de relación Interna.
Con Interna solo se conservan los registros que coinciden en ambos datasets. No se agregan registros nulos.
OrderID | StoreID | TotalAmount | PaymentMethod | StoreID | StoreName |
---|---|---|---|---|---|
1204 | 1 | $91,48 | Crédito | 1 | Baskets and Cases |
1295 | 1 | $103,86 | Crédito | 1 | Baskets and Cases |
1316 | 3 | $97,81 | Débito | 3 | Robert's Plants |
1406 | 2 | $103,24 | Crédito | 2 | Toys! Toys! Toys! |
1421 | 2 | $44,95 | Efectivo | 2 | Toys! Toys! Toys! |
1426 | 2 | $153,71 | Débito | 2 | Toys! Toys! Toys! |
1454 | 3 | $168,95 | Crédito | 3 | Robert's Plants |
Los registros excluidos son los registros de StoreID 4 a 6 del dataset de StoreLocations.
Utilizar el tipo de relación predeterminada es una buena elección para ayudar a responder a las preguntas del caso de uso de muestra de arriba. El tipo de relación Interna proporciona datos que no mostrarán valores nulos al visualizar los datos.
Tipo de relación Todo
El tipo de relación Todo (unión externa completa) mantiene todos los registros de ambos datasets y trata los registros que no contienen coincidencias como valores nulos.
OrderID | StoreID | TotalAmount | PaymentMethod | StoreID | StoreName |
---|---|---|---|---|---|
1204 | 1 | $91,48 | Crédito | 1 | Baskets and Cases |
1295 | 1 | $103,86 | Crédito | 1 | Baskets and Cases |
1316 | 3 | $97,81 | Débito | 3 | Robert's Plants |
1406 | 2 | $103,24 | Crédito | 2 | Toys! Toys! Toys! |
1421 | 2 | $44,95 | Efectivo | 2 | Toys! Toys! Toys! |
1426 | 2 | $153,71 | Débito | 2 | Toys! Toys! Toys! |
1454 | 3 | $168,95 | Crédito | 3 | Robert's Plants |
5 | Gadgets and Gizmos | ||||
6 | Sally's Hardware and Construction | ||||
4 | Aisha's Bookstore and Coffee Shop |
El dataset resultante contiene valores nulos en las columnas procedentes del dataset de la izquierda (StoreTransactions) para registros correspondientes a los StoreID 4, 5 y 6 del dataset de la derecha (StoreLocations). Esto se debe a que no existen registros coincidentes para estos Id. de tienda en el dataset de la izquierda.
Tipo de relación Izquierda
Al utilizar el tipo de relación Izquierda (unión externa izquierda), debe asegurarse de que el dataset cuyos registros desea conservar está en el lado izquierdo de la ventana Crear relaciones seleccionando primero este dataset. Consulte Crear una relación para obtener más información.
Los registros que coincidan con los del dataset de la izquierda (StoreTransactions) se conservarán junto con los registros coincidentes del dataset de la derecha (StoreLocations). Si no se encuentra ninguna coincidencia a la derecha, el lado derecho contendrá valores nulos.
OrderID | StoreID | TotalAmount | PaymentMethod | StoreID | StoreName |
---|---|---|---|---|---|
1204 | 1 | $91,48 | Crédito | 1 | Baskets and Cases |
1295 | 1 | $103,86 | Crédito | 1 | Baskets and Cases |
1316 | 3 | $97,81 | Débito | 3 | Robert's Plants |
1406 | 2 | $103,24 | Crédito | 2 | Toys! Toys! Toys! |
1421 | 2 | $44,95 | Efectivo | 2 | Toys! Toys! Toys! |
1426 | 2 | $153,71 | Débito | 2 | Toys! Toys! Toys! |
1454 | 3 | $168,95 | Crédito | 3 | Robert's Plants |
Este dataset unido tiene el mismo aspecto que el del Tipo de relación Interna. Para responder a las preguntas del caso de uso de muestra, puede utilizar el tipo de relación Izquierda o Interna para crear una relación entre las dos tablas y, a continuación, crear un gráfico de barras en el que no se mostrarán valores nulos.
Si el lado izquierdo (StoreTransactions) incluyera un registro para StoreID 7, que no está en el dataset StoreLocations de la derecha, una unión Izquierda tendría registros nulos a la derecha.
OrderID | StoreID | TotalAmount | PaymentMethod | StoreID | StoreName |
---|---|---|---|---|---|
1204 | 1 | $91,48 | Crédito | 1 | Baskets and Cases |
1295 | 1 | $103,86 | Crédito | 1 | Baskets and Cases |
1316 | 3 | $97,81 | Débito | 3 | Robert's Plants |
1406 | 2 | $103,24 | Crédito | 2 | Toys! Toys! Toys! |
1421 | 2 | $44,95 | Efectivo | 2 | Toys! Toys! Toys! |
1426 | 2 | $153,71 | Débito | 2 | Toys! Toys! Toys! |
1454 | 3 | $168,95 | Crédito | 3 | Robert's Plants |
1502 | 7 | $112,65 | Efectivo |
Tipo de relación Derecha
Al utilizar el tipo de relación Derecha (unión externa derecha), debe asegurarse de que el dataset cuyos registros desea conservar está en el lado derecho de la página Crear relaciones seleccionando primero el dataset de la izquierda y, después, el de la derecha. Consulte Crear una relación para obtener más información.
Los registros que coincidan con los del dataset de la derecha (StoreLocations) se conservarán junto con los registros coincidentes del dataset de la izquierda (StoreTransactions). Si no se encuentra ninguna coincidencia a la izquierda, el lado izquierdo contendrá valores nulos.
OrderID | StoreID | TotalAmount | PaymentMethod | StoreID | StoreName |
---|---|---|---|---|---|
1204 | 1 | $91,48 | Crédito | 1 | Baskets and Cases |
1295 | 1 | $103,86 | Crédito | 1 | Baskets and Cases |
1316 | 3 | $97,81 | Débito | 3 | Robert's Plants |
1406 | 2 | $103,24 | Crédito | 2 | Toys! Toys! Toys! |
1421 | 2 | $44,95 | Efectivo | 2 | Toys! Toys! Toys! |
1426 | 2 | $153,71 | Débito | 2 | Toys! Toys! Toys! |
1454 | 3 | $168,95 | Crédito | 3 | Robert's Plants |
5 | Gadgets and Gizmos | ||||
6 | Sally's Hardware and Construction | ||||
4 | Aisha's Bookstore and Coffee Shop |
El gráfico de barras resultante del dataset unido a la derecha de arriba contendría valores nulos.