Joindre les entités

Icône d’outil Disponible dans les analyses en temps réel et les analyses de Big Data.

L’outil Join Features (Joindre des entités) Bouton Joindre des entités transfère les attributs provenant des entités d’un flux, d’une couche ou d’une table vers d’autres entités du même flux ou vers les entités d’un autre flux ou jeu de données en fonction de relations spatiales, temporelles et attributaires ou d’une combinaison des trois. Vous pouvez éventuellement calculer les statistiques pour les entités jointes.

Diagramme de workflow

Diagramme de workflow Entités jointes

Exemples

Vous trouverez ci-dessous des exemples d’utilisation de l’outil Join Features (Joindre des entités) :

  • Un analyste dispose de données sur la criminalité d’une ville. Afin d’analyser et d’étudier l’impact de ces délits, il est nécessaire de comprendre la relation entre la localisation de ces délits et les différentes juridictions de la ville, telles que les arrondissements scolaires, les zones de police, les voisinages, etc. L’outil Join Features (Joindre des entités) permet d’ajouter des informations supplémentaires sur chaque localisation relative à chaque délit, ainsi que d’étudier et d’analyser de manière plus approfondie l’impact sur diverses juridictions.
  • Lorsqu’un navire d’un flux entre dans une cellule d’intempéries en mouvement d’un autre flux, ajoutez des attributs au navire à partir de l’entité d’événement d’intempéries.

Remarques sur l’utilisation

Gardez les points suivants à l’esprit lorsque vous utilisez l’outil Join Features (Joindre des entités) :

  • Vous pouvez joindre des entités selon une relation spatiale, temporelle ou attributaire, ou une combinaison des trois.

    OptionDescription
    Relation spatiale

    Relation spatiale

    Relation spatiale qui détermine si les entités sont jointes les unes aux autres. Les relations disponibles dépendent du type de géométrie (point, ligne ou surface) des couches jointes. Les types de relations spatiales disponibles sont les suivants :

    • Intersecte
    • Entrée
    • Est égal à
    • Quitter
    • Planaire proche
    • Géodésique proche
    • Contient
    • Dans
    • Touche
    • Croise
    • Superpose
    Remarque :

    Une entité cible doit satisfaire sa relation spatiale avec toutes les entités de jointure si une sortie a été spécifiée et qu'il existe plusieurs entités de jointure. Pour toute autre relation spatiale, s'il existe plusieurs entités de jointure, une entité cible peut satisfaire sa relation spatiale avec toute entité de jointure individuelle.

    Temporal Relation (Relation temporelle)

    Temporal Relation (Relation temporelle)

    Relation temporelle qui détermine si les entités sont jointes les unes aux autres. Les relations disponibles dépendent du type de temps (instant ou intervalle) des couches jointes. Les types de relations temporelles disponibles sont les suivants :

    • Rejoint
    • Rejoint par
    • Superpose
    • Superposé par
    • Pendant
    • Contient
    • Est égal à
    • Termine
    • Terminé par
    • Démarre
    • Démarré par
    • Intersecte
    • Proche
    Attribute relationship (Relation attributaire)

    Attribute relationship (Relation attributaire)

    Relation attributaire qui détermine si les entités sont jointes les unes aux autres. Les entités sont appariées lorsque les valeurs de champ de la couche de jointure sont identiques à celles de la couche cible.

  • Si plusieurs entités correspondent à la même entité cible, vous pouvez déterminer si toutes les entités appariées seront jointes (Join one to many [Joindre un vers plusieurs]) ou si toutes les entités appariées seront synthétisées ensemble (Join one to one [Joindre un vers un]) comme suit :
    • Joindre un vers un : cette option synthétise toutes les entités de jointure d'appariement sur chaque entité de la couche cible. Seules les entités cibles avec une correspondance sont incluses dans la sortie. Le total d’entités jointes est ajouté, ainsi que d’autres statistiques, telles que somme, minimum, maximum, plage, moyenne, variance et écart type. Vous pouvez calculer des résumés statistiques uniquement si une opération Joindre un vers un est spécifiée.
    • Joindre un vers plusieurs : cette option joint toutes les entités appariées de la couche de jointure à la couche cible. La couche de résultat contient plusieurs enregistrements de la couche cible.
      Joindre des entités avec une relation un vers un et un vers plusieurs
      Des exemples de jointure un vers plusieurs et un vers un sont illustrées. Dans cet exemple, la jointure un vers un ne comprend que le total. Les statistiques supplémentaires pouvant être calculées sont indiquées ci-dessous.

      Lorsque le paramètre Join Operation (Opération de jointure) est défini sur Join one to many (Joindre un vers plusieurs), il peut exister plusieurs lignes dans la classe d’entités en sortie pour chaque entité cible.

  • Lorsque vous configurez l’outil Join Features (Joindre des entités) selon une jointure un vers un, vous pouvez choisir l'option only retain features that are joined (conserver uniquement les entités jointes) ou retain all features regardless of join results (conserver toutes les entités indépendamment des résultats de la jointure).
    • Si vous choisissez l’option only retain features that are joined (conserver uniquement les entités jointes), les entités qui ont pu être jointes à une entité du jeu de données de jointure sont présentes en sortie.
    • Si vous sélectionnez l’option retain all features regardless of join results (conserver toutes les entités indépendamment des résultats de la jointure), toutes les entités du jeu de données cible sont présentes en sortie, qu’il y ait eu ou non des attributs de jointure.
    • Lorsque vous conservez toutes les entités, si une entité est conservée mais qu’il n’y avait pas de jointure pour cette entité, la valeur COUNT est zéro et toutes les valeurs attributaires des champs de récapitulation sont nulles.
    • Cette option n’est disponible que pour les jointures de type un vers un.
  • Si les entités cible et de jointure sont dans des systèmes de coordonnées différents, les systèmes de coordonnées de l'entité cible sont utilisés.
  • Si une entité jointe présente une relation spatiale avec plusieurs entités cibles, elle est comptabilisée autant de fois qu’une correspondance est détectée avec l’entité cible. Par exemple, si un point se trouve dans trois polygones, il est comptabilisé trois fois, à savoir une fois pour chaque polygone.
  • Lorsque l’option Spatial relationship (Relation spatiale) est définie sur Near geodesic (Géodésique proche) ou Near planar (Planaire proche), la couche cible doit être projetée ou le système de coordonnées en sortie doit être défini sur un système de coordonnées projetées.
  • Vous pouvez éventuellement créer une expression pour joindre les entités. Si vous spécifiez une expression, seules les entités qui remplissent la condition sont utilisées. Par exemple, vous ne pouvez joindre des entités cibles du champ Magnitude que s’il est supérieur à l’entité jointe avec un champ nommé Explosion, à l’aide de l’expression $target["Magnitude"] > $join["Explosion"].

    En savoir plus sur les expressions Arcade avec les entités jointes

  • Lorsque Spatial relationship (Relation spatiale) est définie sur enter (ouverture) ou exit (fermeture) dans une analyse temps réel les éléments suivants sont vrais :
    • L’outil fonctionne avec des états, ce qui lui permet de comparer des observations séquentielles entre elles en vue de détecter un changement d’état, par exemple pour savoir si la condition actuelle est différente de celle de l’observation précédente. Avec d’autres relations spatiales dans l’analyse en temps réel, l’outil n’a pas besoin de comparer les observations aux précédentes observations ; il peut donc s’exécuter sans état, ce qui nécessite moins de ressources.
    • Lorsqu’il fonctionne avec des états, l’outil Join Features (Joindre des entités) conserve un magasin d’état de l’observation actuelle pour chaque ID de suivi. Lorsqu’une nouvelle observation arrive, elle est comparée à l’observation actuelle du même ID de suivi, si celle-ci existe. Si l’horodatage de la nouvelle observation est plus récent que celui de l’observation actuelle dans le magasin d’état, l’observation actuelle est remplacée. Si l’horodatage est identique à celui de l’observation actuelle pour le même ID de suivi, l’outil ne peut pas faire la distinction entre les deux observations. Ceci signifie que l’outil ne remplace pas l’observation actuelle par la nouvelle observation dans le magasin d’état, la nouvelle observation n’est pas ajoutée au magasin d’état et les observations futures de cet ID de suivi sont comparées à l’observation actuelle, laquelle est conservée dans le magasin d’état jusqu’à l’arrivée d’une nouvelle observation possédant un horodatage ultérieur. L'outil enregistre un avertissement indiquant que cela s’est produit.
    • Le fait de cocher la case First observation can trigger enter (La première observation peut déclencher l’entrée) ou First observation can trigger exit (La première observation peut déclencher la sortie) indique que la première entité cible reçue répond à la condition de filtre si elle se trouve dans une entité jointe (si la relation spatiale est de type enter [entrée]), ou en dehors (si la relation spatiale est de type exit [sortie]), malgré l’absence d’une entité cible antérieure à laquelle comparer la localisation de l’entité cible actuelle. La valeur par défaut est faux (non sélectionné).
    • Le paramètre Target Time Window (Fenêtre temporelle cible) doit être défini au minimum sur l’intervalle le plus long prévu entre des observations pour une trace donnée. Les observations plus anciennes sont supprimées de la mémoire dans le cadre de la gestion des ressources.
      • Il est recommandé de définir une valeur élevée, une valeur trop basse pouvant entraîner la suppression d’enregistrements du stockage d’entités avant l’arrivée de nouvelles observations. Cela signifie que les informations historiques sont supprimées du stockage et que l’entité suivante est traitée comme s’il s’agissait de l’observation initiale. En d’autres termes, les observations n’entreraient ni ne quitteraient jamais l’outil Join Features (Joindre des entités) car l’analyse n’aurait pas connaissance de la précédente observation.
  • Dans le geofencing dynamique, le paramètre Join Time Window (Fenêtre horaire de jointure) doit être défini. Si le flux de jointure ne comporte pas de champ balisé comme END_TIME et que la dernière observation connue pour une entité de jointure est antérieure à cette fenêtre, elle est supprimée de la mémoire de l’outil et n’est pas incluse dans l’analyse. Si le flux de jointure comporte un champ balisé comme END_TIME, l’entité expire du magasin de geofences en fonction de la valeur figurant dans le champ END_TIME ou lorsque la fenêtre temporelle de jointure est fermée, selon l’événement qui se produit en premier.
  • Les statistiques sont calculées uniquement pour les entités présentant la relation spatiale, temporelle ou attributaire utilisée dans l’opération Joindre un vers un. Vous pouvez calculer des statistiques de chaîne et numériques.

Paramètres

Gardez les points suivants à l’esprit lorsque vous utilisez l’outil Join Features (Joindre des entités) :

ParamètreDescriptionType de données

Target layer (Couche cible)

Couche cible contenant les entités à traiter.

Entités

Join layer (Couche de jointure)

Couche dont les entités sont jointes à celles de la couche cible.

Entités

Join operation (Opération de jointure)

Indique si la jointure est de type un vers un ou un vers plusieurs.

  • Join one to one (Jointure de type un vers un) : les jointures de type un vers un renvoient toujours un nombre de résultats identique aux entités cibles, ou inférieur si des entités cibles ne correspondent à aucune entité jointe. Les attributs des entités jointes sont résumés selon le paramètre Summary fields (Champs de récapitulation).
  • Join one to many (Jointure de type un vers plusieurs) : les jointures de type un vers plusieurs renvoient un enregistrement pour chaque appariement entre des entités cibles et jointes. Les attributs des entités jointes ne sont pas résumés.

Chaîne

Retain all features (Conserver toutes les entités)

Indique si seules les entités des jointures réussies sont conservées ou si toutes les entités sont conservées indépendamment du fait qu’une jointure réussie existe pour ces entités. Cette option n’est disponible que pour les jointures de type un vers un.

Pour les jointures de type un vers plusieurs, cette option n’est pas disponible et seules les entités associées à des jointures réussies sont renvoyées.

Si toutes les entités sont conservées, pour les entités sans jointure, le total est égal à zéro et les valeurs de champ de récapitulation sont nulles.

Chaîne

Relation spatiale

Définit les critères utilisés pour joindre spatialement les entités. Différents critères d’ordre Spatial sont disponibles si ce paramètre est sélectionné.

  • Contains (Contient) : l’entité cible contient intégralement l’entité de jointure.
  • Equals (Est égal à) : l’entité cible est égale à l’entité de jointure.
  • Intersects (Intersecte) : l’entité cible partage une partie quelconque de sa géométrie avec l’entité de jointure.
  • Near geodesic (Géodésique proche) : distance entre l’entité cible et l’entité de jointure sur une surface courbe par opposition à leur distance sur une surface plane.
  • Near planar (Planaire proche) : distance entre l’entité cible et l’entité de jointure dans un plan cartésien en deux dimensions.
  • Within (Dans) : l’entité cible est contenue intégralement dans l’entité de jointure.

Chaîne

Spatial near distance (Distance de proximité spatiale)

Les entités jointes dans cette distance spécifiée d’une entité cible à prendre en compte pour la jointure spatiale. La distance de proximité spatiale est uniquement valide lorsque la relation spatiale est définie sur Near geodesic (Géodésique proche) ou Near planar (Planaire proche).

Unité linéaire

Temporal Relation (Relation temporelle)

Définit les critères temporels utilisés pour l’appariement des entités. Ce paramètre est disponible si l’option Temporal (Temporel) est cochée. Différents critères temporels sont disponibles en fonction du type d’entités temporelles : Instant ou Interval (Intervalle).

  • Meets (Rejoint) : lorsque la fin d’un intervalle temporel cible est égale au début de l’intervalle temporel de jointure, les données temporelles cibles rejoignent les données temporelles de jointure.
  • Met by (Rejoint par) : lorsque le début d’un intervalle temporel cible est égal à la fin de l’intervalle temporel de jointure, les données temporelles cibles sont rejointes par les données temporelles de jointure.
  • Overlaps (Superpose) : lorsqu’un intervalle temporel cible commence et se termine avant le début et la fin de l’intervalle temporel de jointure, les données temporelles cibles recouvrent les données temporelles de jointure.
  • Overlapped by (Superposé par) : lorsqu’un intervalle temporel cible commence et se termine après l’heure de début et l’heure de fin de l’intervalle temporel de jointure, les données temporelles cibles sont recouvertes par les données temporelles de jointure.
  • During (Pendant) : lorsque des données temporelles cibles interviennent entre le début et la fin de l’intervalle temporel de jointure, les données temporelles cibles se situent pendant les données temporelles de jointure.
  • Contains (Contient) : lorsque les données temporelles d’une entité de jointure interviennent entre le début et la fin de l’intervalle temporel cible, les données temporelles cibles contiennent les données temporelles de jointure.
  • Equals (Égal à) : des données temporelles sont considérées égales si leurs instants ou intervalles sont identiques.
  • Finishes (Termine) : lorsque des données temporelles cibles se terminent au même moment que des données temporelles de jointure, et que les données temporelles cibles ont commencé après celles de jointure, les données temporelles cibles terminent les données temporelles de jointure.
  • Finished by (Terminé par) : lorsque les données temporelles d’une entité de jointure se terminent au même moment que les données temporelles cibles, et que les données temporelles de jointure ont commencé après les données temporelles cibles, les données temporelles cibles sont terminées par les données temporelles de jointure.
  • Starts (Démarre) : lorsque des données temporelles cibles commencent au même moment que l’intervalle temporel de jointure, et se terminent avant la fin de l’intervalle temporel de jointure, les données temporelles cibles démarrent les données temporelles de jointure.
  • Started by (Démarré par) : lorsqu’un intervalle temporel cible commence au même moment que les données temporelles de jointure, et se termine après les données temporelles de jointure, les données temporelles cibles sont démarrées par les données temporelles de jointure.
  • Intersects (Intersecte) : lorsqu’une partie quelconque de données temporelles cibles intervient au même moment que les données temporelles de jointure, les données temporelles cibles intersectent les données temporelles de jointure.
  • Near (Proche) : lorsque des données temporelles cibles sont comprises dans une plage de temps spécifiée à partir des données temporelles de jointure, les données temporelles cibles sont proches des données temporelles de jointure.
  • Near before (Proche avant) : lorsque des données temporelles cibles sont avant les données temporelles de jointure, mais comprises dans une plage de temps spécifiée à partir des données temporelles de jointure, les données temporelles cibles sont proches avant les données temporelles de jointure.
  • Near after (Proche après) : lorsque des données temporelles cibles sont après les données temporelles de jointure, mais comprises dans une plage de temps spécifiée à partir des données temporelles de jointure, les données temporelles cibles sont proches après les données temporelles de jointure.

Chaîne

Temporal near distance (Distance de proximité temporelle)

Temps qui s’écoule entre les événements. Les jointures sont effectuées entre les événements qui ont lieu dans cet intervalle. Ce paramètre est disponible si l’option Temporal relationship (Relation temporelle) est définie sur Near (Proche).

Unités de temps

Attribute relationship (Relation attributaire)

Joint des entités en fonction des valeurs d'un champ attributaire. Spécifiez quel champ attributaire de la couche cible doit correspondre à un champ attributaire de la couche de jointure. Ce paramètre apparaît si l’option Attribute (Attribut) est activée.

  • Target field (Champ cible) : champ attributaire de la couche cible contenant les valeurs à apparier.
  • Join field (Champ de jointure) : champ attributaire de la couche de jointure contenant les valeurs à apparier.

Chaîne

Champs de récapitulation

Spécifie les statistiques à calculer sur les champs spécifiés depuis les entités jointes. Les statistiques sont calculées pour les jointures de type un vers un. Différentes statistiques sont disponibles en fonction du type du champ spécifié : chaîne, valeur numérique ou date.

  • Any (Tout) : exemple de chaîne provenant d’un champ de type chaîne.
  • Count (Total) : calcule le nombre de valeurs non nulles. Peut être utilisé sur des champs numériques ou des chaînes. Le total de [Null, 0, 2] est égal à 2.
  • Count (distinct) (Total [distinct]) : calcule le nombre de valeurs non nulles distinctes. Peut être utilisé sur des champs numériques ou des chaînes. Le résultat du total distinct de [null, 4, 3, 4] est 2.
  • Sum (Somme) : somme des valeurs numériques dans un champ. La somme de [null, 1, 3] est égale à 4.
  • Square sum (Somme des carrés) : somme, sur toutes les observations, des différences au carré de chaque observation par rapport à la moyenne globale. La somme des carrés de [null, 2,2, 3,1, 4,7] est égale à 3,206.
  • Min : valeur minimale d’un champ numérique. La valeur minimale de [0, 2, Null] est égale à 0.
  • Max : valeur maximale d’un champ numérique. La valeur maximale de [0, 2, Null] est égale à 2.
  • Mean (Moyenne) : moyenne des valeurs numériques. La moyenne de [0,2, Null] est égale à 1.
  • Range (Plage) : plage d’un champ numérique. Elle est calculée comme la valeur minimale soustraite de la valeur maximale. La plage de [0, Null, 1] est égale à 1. La plage de [Null, 4] est égale à 0.
  • Variance : variance d’un champ numérique dans une trace. La variance de [1] est la valeur nulle. La variance de [Null, 1,1,1] est égale à 1.
  • Standard Deviation (Écart type) : écart type d’un champ numérique. L'écart type de [1] est la valeur Null. L'écart type de [Null, 1,1,1] est égale à 1.

Chaîne

Join condition (Condition de jointure)

Applique une condition à des champs spécifiés. Seules les entités présentant des champs qui remplissent ces conditions sont jointes.

Par exemple, vous pouvez appliquer une jointure à des entités lorsque l’attribut HealthSpending dans la couche de jointure est supérieur à 20 % de l’attribut Income dans la couche cible. La condition de jointure permettant d’appliquer cette expression est $join["HealthSpending"] > $target["Income"] * .2.

Chaîne

La première observation peut déclencher l’ouverture/la fermeture

Indique si la première entité cible reçue répond à la condition de relation spatiale si elle se trouve à l’intérieur d’une entité jointe si la relation spatiale est de type enter (entrée) ou en dehors de toutes les entités jointes si la relation spatiale est de type exit (sortie), malgré l’absence d’entité cible précédente avec laquelle comparer la localisation de l’entité cible actuelle. La valeur par défaut est faux (non sélectionné).

Booléen

Remplacer la géométrie de l’entité cible par la géométrie de l’entité de jointure

Remplace la géométrie de l’entité cible par la géométrie de l’entité de jointure. Par exemple, si l’entité cible est un point alors que l’entité de jointure à laquelle elle est jointe est un polygone, l’entité cible adopte la géométrie surfacique de l’entité de jointure. Par défaut, cette propriété est définie sur faux.

Si l’entité cible ne possède pas de géométrie, elle adopte la géométrie de l’entité de jointure à laquelle elle est jointe.

Si l’entité cible possède une géométrie alors que l’entité de jointure à laquelle elle est jointe n’en possède pas, l’entité cible perd sa géométrie et devient tabulaire.

Remarque :

Ce paramètre n'est pas valide si l'option Retain all features (Conserver toutes les entités) est définie sur true. Les entités en sortie ne peuvent pas posséder de géométries différentes.

Booléen

Target Time Window (Fenêtre horaire cible)

Ce paramètre doit être défini au minimum sur l’intervalle le plus long prévu entre des observations pour une trace donnée. Les observations plus anciennes sont supprimées de la mémoire dans le cadre de la gestion des ressources.

Ce paramètre est valide uniquement lorsque Spatial relationship (Relation spatiale) est défini sur enter (ouverture) ou sur exit (fermeture).

Chaîne

Join Time window (Fenêtre horaire de jointure)

Fenêtre horaire pour le flux de jointure (geofencing dynamique). Si la dernière observation connue pour une entité de jointure est antérieure à la fenêtre temporelle spécifiée, elle est supprimée et n’est pas incluse dans l’analyse. Si le flux de jointure comporte un champ marqué comme END_TIME, ce paramètre est facultatif.

Chaîne

Considérations et limitations

Vous devez prendre en compte les considérations et limitations suivantes lorsque vous utilisez l’outil Join Features (Joindre des entités) :

  • Vous pouvez calculer des résumés statistiques uniquement si une opération Join one to one (Joindre un vers un) est spécifiée.
  • Le nom de champ COUNT représente le nombre d’entités jointes pour une jointure un vers un. Si le nom de champ COUNT existe déjà dans la structure cible, le champ est nommé join_COUNT. Si vous effectuez plusieurs jointures consécutives, les noms de champ sont COUNT, join_COUNT, join_COUNT1, join_COUNT2, etc. pour éviter les conflits.