Övning – Välj kolumner som ska returneras med hjälp av projektoperatorn

Slutförd

Du kan använda Kusto-frågor för att filtrera data och returnera specifik information.

Kom ihåg att du har tittat på godtyckliga rader med data för att få en uppfattning om dess struktur. I den här lektionen får du lära dig hur du väljer specifika datakolumner som relaterar till stormtyper, platser och skadliga effekter.

Använda operatorn project

Om du kommer ihåg har exemplet med meteorologiska data en hel del kolumner. Alla dessa kolumner är inte meningsfulla för den här utforskningen. Du väljer bara några kolumner att visa. Du använder operatorn project för att definiera vilka kolumner du vill se i utdata. Kolumnnamn avgränsas med kommatecken.

  1. Kör följande fråga. Den här frågan namnger de kolumner som ska returneras och deras ordning inom operatorn project .

    Kör frågan

    StormEvents
    | project EventType, State, DamageProperty, DamageCrops, InjuriesDirect, InjuriesIndirect
    | take 10
    
  2. Du bör få resultat som ser ut som följande bild:

    Screenshot of project operator results with six columns.

  3. Observera att endast de kolumner som anges i operatorn project visas i utdata.

Byt namn på och definiera nya kolumner med hjälp av project

För att förstå effekterna av stormar i amerikanska stater vill du få det totala antalet skador och den totala mängden skador. Med operatorn project kan du summera heltalsvärden från olika kolumner och returnera resultatet i en ny kolumn. Du kan också byta namn på kolumner för att göra dem mer meningsfulla för din analys.

Det finns till exempel andra länder/regioner med stater. Det kan vara bra att byta namn på delstatskolumnen så att det är tydligt att resultatet är för amerikanska delstater. Nu ska vi se hur du ändrar din tidigare fråga så att du får det totala antalet skador och mängden skador för amerikanska delstater.

  1. Uppdatera din tidigare fråga för att skapa en ny kolumn som visar summan av InjuriesDirect och InjuriesIndirect:

    Injuries=InjuriesDirect+InjuriesIndirect

  2. Gör samma sak för de två typerna av skadekolumner genom att lägga ihop skador på grödor och skador på egendom:

    Damage=DamageCrops+DamageProperty

  3. Hovra över kolumnnamnet i frågeredigeraren för att se datatypen i kolumnerna. Du kan använda en numerisk operator för att lägga till värdena eftersom dessa kolumner är av typen int (heltal).

    Screenshot of the data type in a query editor.

  4. Byt namn på kolumnen Tillstånd till US_State:

    US_State=State

  5. Granska din uppdaterade fråga och kör den. Den fullständiga frågan innehåller beräkningar för skador, beräkningar för skador och namnbyte av kolumnen Tillstånd .

    Kör frågan

    StormEvents
    | project US_State=State, EventType, Injuries=InjuriesDirect+InjuriesIndirect, Damage=DamageCrops+DamageProperty
    | take 10
    
  6. Du bör få resultat som ser ut som följande bild:

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

  7. Observera att kolumnen State har bytt namn till US_State. Kolumnen Skador är ny och har beräknats som summan av InjuriesDirect och InjuriesIndirect. Kolumnen Skador är också ny och har beräknats som summan av DamageCrops och DamageProperty.

Använda operatorn project-away

Vad händer om du vill ta bort några utvalda kolumner? För den här utforskningen har du ingen användning för de ID:t som tilldelats till varje avsnitt och händelse. Du kan ta bort specifika kolumner med hjälp av operatorn project-away , vilket anger vilka kolumner du vill ta bort medan du lämnar alla återstående kolumner. Du kan också använda ett jokertecken, till exempel | project-away *Id, för att ta bort alla kolumner som slutar i ID.

  1. Kör följande fråga:

    Kör frågan

    StormEvents
    | project-away EpisodeId, EventId
    | take 10
    
  2. Kontrollera dina resultat. Kom ihåg att kolumnerna EpisodeId och EventId fanns mellan kolumnerna EndTime och State. Vilka av dessa kolumner ser du i utdata?