Plug-in funnel_sequence_completion

Calcula um funil de passos de sequência concluídos ao comparar diferentes períodos de tempo. O plug-in é invocado com o evaluate operador.

Syntax

T| evaluatefunnel_sequence_completion(IdColumn,Linha CronológicaColuna,Iniciar,Fim,BinSize,StateColumn,Sequência,MaxSequenceStepWindows)

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Tipo Necessário Descrição
T string ✔️ A expressão tabular de entrada.
IdColum string ✔️ A referência de coluna que representa o ID. A coluna tem de estar presente em T.
Linha CronológicaColuna string ✔️ A referência de coluna que representa a linha cronológica. A coluna tem de estar presente em T.
Iniciar datetime, timespan ou long ✔️ O período de início da análise.
Fim datetime, timespan ou long ✔️ O período de fim da análise.
BinSize datetime, timespan ou long ✔️ O tamanho da janela de análise. Cada janela é analisada separadamente.
StateColumn string ✔️ A referência de coluna que representa o estado. A coluna tem de estar presente em T.
Sequence dynamic ✔️ Uma matriz com os valores de sequência que são pesquisados em StateColumn.
MaxSequenceStepPeriods dynamic ✔️ Uma matriz com os valores do intervalo de tempo máximo permitido entre o primeiro e o último passo sequencial na sequência. Cada período na matriz gera um resultado de análise de funil.

Devoluções

Devolve uma única tabela útil para construir um diagrama de funil para a sequência analisada:

  • TimelineColumn: a janela de tempo analisada (bin), cada contentor no período de tempo de análise (Início ao Fim) gera uma análise de funil separadamente.
  • StateColumn: o estado da sequência.
  • Period: o período máximo permitido para concluir os passos na sequência de funil medido a partir do primeiro passo da sequência. Cada valor em MaxSequenceStepPeriods gera uma análise de funil com um período separado.
  • dcount: contagem distinta de IdColumn na janela de tempo que transitou do estado da primeira sequência para o valor de StateColumn.

Exemplos

Explorar Eventos do Storm

A consulta seguinte verifica o funil de conclusão da sequência: Hail ->Tornado ->Thunderstorm Wind no tempo "geral" de 1 hora, 4 horas, 1 dia.

let _start = datetime(2007-01-01);
let _end =  datetime(2008-01-01);
let _windowSize = 365d;
let _sequence = dynamic(['Hail', 'Tornado', 'Thunderstorm Wind']);
let _periods = dynamic([1h, 4h, 1d]);
StormEvents
| evaluate funnel_sequence_completion(EpisodeId, StartTime, _start, _end, _windowSize, EventType, _sequence, _periods) 

Saída

StartTime EventType Period dcount
2007-01-01 00:00:00.0000000 Granizo 01:00:00 2877
2007-01-01 00:00:00.0000000 Tornado 01:00:00 208
2007-01-01 00:00:00.0000000 Vento trovoada 01:00:00 87
2007-01-01 00:00:00.0000000 Granizo 04:00:00 2877
2007-01-01 00:00:00.0000000 Tornado 04:00:00 231
2007-01-01 00:00:00.0000000 Vento trovoada 04:00:00 141
2007-01-01 00:00:00.0000000 Granizo 1.00:00:00 2877
2007-01-01 00:00:00.0000000 Tornado 1.00:00:00 244
2007-01-01 00:00:00.0000000 Vento trovoada 1.00:00:00 155

Compreender os resultados:
O resultado é três funil (para períodos: uma hora, 4 horas e um dia). Para cada passo de funil, são apresentadas várias contagens distintas. Pode ver que quanto mais tempo for dado para concluir toda a sequência de Hail ->Tornado ->Thunderstorm Wind, o valor mais elevado dcount é obtido. Por outras palavras, houve mais ocorrências da sequência que atingiu o passo de funil.