練習 - 使用專案運算子選取要傳回的資料行

已完成

您可使用 Kusto 查詢來篩選資料並傳回特定資訊。

回想一下,您已查看任意資料列,以了解其資料結構。 在本單元中,您將了解如何選擇與 Storm 型別、位置和損害效果相關的特定資料行。

使用 project 運算子

如果您還記得的話,氣象資料範例有相當多的資料行。 並非所有資料行都對於這項探索具有意義。 您只要選擇幾個要檢視的資料行。 您將使用 project 運算子來定義要在輸出中看到的資料行。 資料行名稱會以逗號分隔。

  1. 執行下列查詢。 此查詢會在 project 運算子內將要傳回的資料行與其順序命名。

    執行查詢

    StormEvents
    | project EventType, State, DamageProperty, DamageCrops, InjuriesDirect, InjuriesIndirect
    | take 10
    
  2. 您應該會取得如下圖所示的結果:

    含有六個資料行之專案運算子結果的螢幕擷取畫面。

  3. 請注意,僅運算子中 project 提及的資料行會出現在輸出內容中。

使用 project 重新命名與定義新資料行

若要了解美國各州的暴風影響,您想要取得傷患總人數和損害總金額。 有了 project 運算子後,您即可加總不同資料行的整數值,並在新的資料行中傳回結果。 您也可以重新命名資料行,使其對於您執行的分析更具意義。

例如,還有其他具有州的國家/地區。 重新命名州資料行可能有所助益,如此一來即可清楚知道該結果適用於美國的州。 查看如何變更之前的查詢,以取得美國各州傷患總人數與損害總金額。

  1. 更新您之前的查詢以建立新的資料行,即可顯示 InjuriesDirectInjuriesIndirect 的總和:

    Injuries=InjuriesDirect+InjuriesIndirect

  2. 在兩種型別的損毀資料行執行相同動作,方法是農作物損害與資產損害加總:

    Damage=DamageCrops+DamageProperty

  3. 將滑鼠停留在查詢編輯器中的資料行名稱上方,以查看資料行中包含的資料型別。 您可以使用數值運算子來新增值,原因是這些資料行的型別為 int (整數)。

    查詢編輯器資料類型的螢幕擷取畫面。

  4. State 資料行重新命名為 US_State

    US_State=State

  5. 檢閱更新的查詢並執行。 完整查詢包括針對傷患的統計資料、損害的統計資料,並重新命名 State 資料行。

    執行查詢

    StormEvents
    | project US_State=State, EventType, Injuries=InjuriesDirect+InjuriesIndirect, Damage=DamageCrops+DamageProperty
    | take 10
    
  6. 您應該會取得如下圖所示的結果:

    重新命名資料行專案運算子之查詢結果的螢幕擷取畫面。

  7. 請注意,State 資料行已重新命名為 US_StateInjuries 資料行是新的,而且為 InjuriesDirectInjuriesIndirect 的總和。 Damage 資料行也是新的,而且為 DamageCropsDamageProperty 的總和。

使用 project-away 運算子

如果您想要移除幾個已選取的資料行,該怎麼做? 在此探索中,您沒有指派任何用途給每集與每個事件的識別碼。 您可以使用 project-away 運算子來移除特定資料行,這表示移除您要移除的資料行,同時保留所有剩餘的資料行。 您也可以使用萬用字元,例如 | project-away *Id,以移除所有以 Id 結尾的資料行。

  1. 執行下列查詢:

    執行查詢

    StormEvents
    | project-away EpisodeId, EventId
    | take 10
    
  2. 檢查您的結果。 回想一下,EpisodeIDEventID 資料位於 EndTimeState 資料行之間。 您在輸出中看到哪一個資料行?