Partilhar via


series_lag_fl()

Aplica-se a: ✅Microsoft FabricAzure Data Explorer✅Azure MonitorMicrosoft Sentinel

Aplica um atraso em uma série.

A função series_lag_fl() é uma função definida pelo usuário (UDF) que pega uma expressão contendo uma matriz numérica dinâmica como entrada e a desloca para trás. É comumente usado para mudar séries temporais para testar se um padrão é novo ou corresponde a dados históricos.

Sintaxe

series_lag_fl(, y_series deslocamento)

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Digitar Obrigatória Descrição
y_series dynamic ✔️ Uma célula de matriz de valores numéricos.
deslocamento int ✔️ Um inteiro especificando o deslocamento necessário em compartimentos.

Definição de função

Você pode definir a função inserindo seu código como uma função definida por consulta ou criando-a como uma função armazenada em seu banco de dados, da seguinte maneira:

Defina a função usando a instrução let a seguir. Nenhuma permissão é necessária.

Importante

Uma instrução let não pode ser executada sozinha. Ele deve ser seguido por uma instrução de expressão tabular. Para executar um exemplo funcional de series_lag_fl(), consulte Exemplo.

let series_lag_fl = (series:dynamic, offset:int)
{
    let lag_f = toscalar(range x from 1 to offset+1 step 1
    | project y=iff(x == offset+1, 1, 0)
    | summarize lag_filter = make_list(y));
    fir(series, lag_f, false)
};
// Write your query to use the function here.

Exemplo

Para usar uma função definida por consulta, invoque-a após a definição da função inserida.

let series_lag_fl = (series:dynamic, offset:int)
{
    let lag_f = toscalar(range x from 1 to offset+1 step 1
    | project y=iff(x == offset+1, 1, 0)
    | summarize lag_filter = make_list(y));
    fir(series, lag_f, false)
};
let dt = 1h;
let time_shift = 1d;
let bins_shift = toint(time_shift/dt);
demo_make_series1
| make-series num=count() on TimeStamp step dt by OsVer
| extend num_shifted=series_lag_fl(num, bins_shift)
| render timechart

Saída

Gráfico de uma série temporal deslocada em um dia.