Øvelse – Vælg de kolonner, der skal returneres ved hjælp af projektoperatoren

Fuldført

Du kan bruge Kusto-forespørgsler til at filtrere data og returnere specifikke oplysninger.

Husk, at du har kigget på vilkårlige rækker med data for at få en fornemmelse af datastrukturen. I dette undermodul lærer du, hvordan du vælger bestemte datakolonner, der er relateret til stormtyper, placeringer og skadelige effekter.

Brug operatoren project

Hvis du husker det meteorologiske dataeksempel, er der en hel del kolonner. Det er ikke alle disse kolonner, der giver mening for denne udforskning. Du skal blot vælge nogle få kolonner at få vist. Du skal bruge operatoren project til at definere, hvilke kolonner du vil have vist i outputtet. Kolonnenavne adskilles af kommaer.

  1. Kør følgende forespørgsel. Denne forespørgsel navngiver de kolonner, der skal returneres, og deres rækkefølge i operatoren project.

    Kør forespørgslen

    StormEvents
    | project EventType, State, DamageProperty, DamageCrops, InjuriesDirect, InjuriesIndirect
    | take 10
    
  2. Du bør få resultater, der ligner følgende billede:

    Skærmbillede af projektoperatørens resultater med seks kolonner.

  3. Bemærk, at det kun er de kolonner, der er nævnt i operatoren project, der vises i outputtet.

Omdøb og definer nye kolonner ved hjælp af project

For at forstå konsekvenserne af storme i amerikanske stater, du ønsker at få det samlede antal skader og den samlede mængde af skader. Med operatoren project kan du opsummere heltalsværdier fra forskellige kolonner og returnere resultaterne i en ny kolonne. Du kan også omdøbe kolonner for at gøre dem mere meningsfulde i din analyse.

Der er f.eks. andre lande/områder med stater. Det kan være nyttigt at omdøbe kolonnen State, så det er klart, at resultaterne er for stater i USA. Lad os se, hvordan du ændrer din tidligere forespørgsel, så du får det samlede antal skader og mængden af skader for amerikanske stater.

  1. Opdater din tidligere forespørgsel for at oprette en ny kolonne, der viser summen af InjuriesDirect- og InjuriesIndirect-:

    Injuries=InjuriesDirect+InjuriesIndirect

  2. Gør det samme for de to typer af skader kolonner ved at lægge sammen skader på afgrøder og skader på ejendom:

    Damage=DamageCrops+DamageProperty

  3. Peg på kolonnenavnet i forespørgselseditoren for at se datatypen i kolonnerne. Du kan bruge en numerisk operator til at tilføje værdierne, fordi disse kolonner er af typen int (heltal).

    Skærmbillede af datatypen i en forespørgselseditor.

  4. Omdøb kolonnen State til US_State:

    US_State=State

  5. Gennemse din opdaterede forespørgsel, og kør den. Den komplette forespørgsel indeholder beregninger for skader, beregninger for skader og omdøbning af kolonnen State.

    Kør forespørgslen

    StormEvents
    | project US_State=State, EventType, Injuries=InjuriesDirect+InjuriesIndirect, Damage=DamageCrops+DamageProperty
    | take 10
    
  6. Du bør få resultater, der ligner følgende billede:

    Skærmbillede af forespørgselsresultater for en projektoperator, der omdøber kolonner.

  7. Bemærk, at kolonnen State er blevet omdøbt til US_State. Kolonnen Injuries er ny og er beregnet som summen af InjuriesDirect og InjuriesIndirect. Kolonnen Damage er også ny og er beregnet som summen af DamageCrops og DamageProperty.

Brug operatoren project-away

Hvad nu, hvis du vil fjerne nogle få udvalgte kolonner? I forbindelse med denne udforskning har du ikke brug for de id'er, der er tildelt hver episode og begivenhed. Du kan fjerne bestemte kolonner ved hjælp af operatoren project-away, som angiver, hvilke kolonner der skal fjernes, mens du forlader alle resterende kolonner. Du kan også bruge et jokertegn, f.eks. | project-away *Id, til at fjerne alle kolonner, der ender i Id.

  1. Kør følgende forespørgsel:

    Kør forespørgslen

    StormEvents
    | project-away EpisodeId, EventId
    | take 10
    
  2. Kontrollér dine resultater. Husk, at kolonnerne EpisodeId og EventId var mellem kolonnerne EndTime og State. Hvilke af disse kolonner kan du se i outputtet?