Share via


sequence_detect プラグイン

指定された述語に基づいてシーケンスの出現を検出します。 このプラグインは、evaluate 演算子を使用して呼び出します。

構文

T| evaluatesequence_detect(TimelineColumn,MaxSequenceStepWindow,MaxSequenceSpan,Expr1,Expr2, ..., Dim1,Dim2, ...)

構文規則について詳しく知る。

パラメーター

名前 必須 説明
T string ✔️ 表形式の入力式。
TimelineColumn string ✔️ タイムラインを表す列参照は、ソース式に存在する必要があります。
MaxSequenceStepWindow timespan ✔️ シーケンス内の 2 つの連続したステップ間の最大許容時間スパンの値。
MaxSequenceSpan timespan ✔️ シーケンスがすべてのステップを完了するための最大タイムスパン。
Expr1Expr2、... string ✔️ シーケンス ステップを定義するブール述語式。
Dim1Dim2、... string ✔️ シーケンスの関連付けに使用されるディメンション式。

戻り値

テーブルの各行がシーケンスの 1 つの出現を表す 1 つのテーブルを返します。

  • Dim1, Dim2, ...: シーケンスの関連付けに使用されたディメンション列。
  • Expr1TimelineColumn, Expr2TimelineColumn, ...: シーケンスの各ステップのタイムラインを表す、時刻値を含む列。
  • Duration: シーケンスの全体的な時間枠。

次のクエリでは、テーブル T を参照して、指定された期間から関連データを検索します。

T | evaluate sequence_detect(datetime_column, 10m, 1h, e1 = (Col1 == 'Val'), e2 = (Col2 == 'Val2'), Dim1, Dim2)

暴風雨イベントの調査

次のクエリでは、StormEvents テーブル (2007 年の気象統計) を参照し、"Excessive Heat (猛暑)" の後、5 日以内に "Wildfire (山火事)" が発生したケースを示します。

StormEvents
| evaluate sequence_detect(
               StartTime,
               5d,  // step max-time
               5d,  // sequence max-time
               heat=(EventType == "Excessive Heat"), 
               wildfire=(EventType == 'Wildfire'), 
               State
           )

出力

State heat_StartTime wildfire_StartTime Duration
CALIFORNIA 2007-05-08 00:00:00.0000000 2007-05-08 16:02:00.0000000 16:02:00
CALIFORNIA 2007-05-08 00:00:00.0000000 2007-05-10 11:30:00.0000000 2.11:30:00
CALIFORNIA 2007-07-04 09:00:00.0000000 2007-07-05 23:01:00.0000000 1.14:01:00
SOUTH DAKOTA 2007-07-23 12:00:00.0000000 2007-07-27 09:00:00.0000000 3.21:00:00
テキサス州 2007-08-10 08:00:00.0000000 2007-08-11 13:56:00.0000000 1.05:56:00
CALIFORNIA 2007-08-31 08:00:00.0000000 2007-09-01 11:28:00.0000000 1.03:28:00
CALIFORNIA 2007-08-31 08:00:00.0000000 2007-09-02 13:30:00.0000000 2.05:30:00
CALIFORNIA 2007-09-02 12:00:00.0000000 2007-09-02 13:30:00.0000000 01:30:00