Exercice : Sélectionner les colonnes à retourner à l’aide de l’opérateur project

Effectué

Vous pouvez utiliser des requêtes Kusto pour filtrer les données et retourner des informations spécifiques.

Rappelez-vous que vous avez examiné des lignes de données arbitraires pour avoir une idée de leur structure. Dans cette unité, vous allez apprendre à choisir des colonnes de données spécifiques liées aux types, aux localisations et aux dégâts des tempêtes.

Utilisez l’opérateur project

À titre de rappel, l’exemple des données météorologiques comporte pas mal de colonnes. Toutes ces colonnes ne sont pas significatives pour l’exploration. Vous allez choisir seulement quelques colonnes à visualiser. Vous allez utiliser l’opérateur project pour définir les colonnes à voir dans la sortie. Les noms de colonnes sont séparés par des virgules.

  1. Exécutez la requête suivante. Cette requête nomme les colonnes à retourner et l’ordre de retour dans l’opérateur project.

    Exécuter la requête

    StormEvents
    | project EventType, State, DamageProperty, DamageCrops, InjuriesDirect, InjuriesIndirect
    | take 10
    
  2. Vous devez obtenir des résultats qui ressemblent à l’image suivante :

    Screenshot of project operator results with six columns.

  3. Notez que seules les colonnes mentionnées dans l’opérateur project apparaissent dans la sortie.

Renommer et définir de nouvelles colonnes à l’aide de project

Pour comprendre l’impact des tempêtes aux États-Unis, vous devez obtenir le nombre total de blessés et le montant total des dégâts. Avec l’opérateur project, vous pouvez additionner les valeurs entières issues de différentes colonnes et retourner les résultats dans une nouvelle colonne. Vous pouvez également renommer les colonnes afin de les rendre plus explicites pour votre analyse.

Par exemple, il y a d’autres pays/régions avec des États. Il peut s’avérer utile de renommer la colonne State (État) pour qu’elle indique clairement que les résultats concernent les États-Unis. Voyons comment changer votre requête précédente afin d’obtenir le nombre total de blessés et le montant des dégâts pour les États-Unis.

  1. Mettez à jour votre requête précédente pour créer une colonne qui affiche la somme de InjuriesDirect et InjuriesIndirect :

    Injuries=InjuriesDirect+InjuriesIndirect

  2. Faites de même pour les deux types de colonne de dégâts en additionnant les dégâts occasionnés aux cultures et les dégâts matériels :

    Damage=DamageCrops+DamageProperty

  3. Pointez sur le nom de la colonne dans l’éditeur de requête pour voir le type de données contenu dans les colonnes. Vous pouvez utiliser un opérateur numérique pour ajouter les valeurs, car ces colonnes sont de type int (entier).

    Screenshot of the data type in a query editor.

  4. Renommez la colonne State en US_State :

    US_State=State

  5. Passez en revue votre requête mise à jour, puis exécutez-la. La requête complète inclut des calculs pour les blessés, des calculs pour les dégâts et le renommage de la colonne State.

    Exécuter la requête

    StormEvents
    | project US_State=State, EventType, Injuries=InjuriesDirect+InjuriesIndirect, Damage=DamageCrops+DamageProperty
    | take 10
    
  6. Vous devez obtenir des résultats qui ressemblent à l’image suivante :

    Screenshot of query results for a project operator that renames columns.

  7. Notez que la colonne State a été renommée US_State. La colonne Injuries est nouvelle. Elle a été calculée en additionnant InjuriesDirect et InjuriesIndirect. La colonne Damage est également nouvelle. Elle a été calculée en additionnant DamageCrops et DamageProperty.

Utilisez l’opérateur project-away

Et si vous souhaitez supprimer quelques colonnes spécifiques ? Pour cette exploration, vous n’avez pas besoin des ID affectés à chaque épisode et événement. Vous pouvez supprimer des colonnes spécifiques à l’aide de l’opérateur project-away, qui indique les colonnes à supprimer tout en conservant toutes les colonnes restantes. Vous pouvez également utiliser un caractère générique, par exemple | project-away *Id, pour supprimer toutes les colonnes qui finissent par Id.

  1. Exécutez la requête suivante :

    Exécuter la requête

    StormEvents
    | project-away EpisodeId, EventId
    | take 10
    
  2. Vérifiez vos résultats. N’oubliez pas que les colonnes EpisodeId et EventId se trouvaient entre les colonnes EndTime et State. Quelles colonnes voyez-vous dans la sortie ?