series_periods_validate()

Verifica se uma série temporal contém padrões periódicos com os tamanhos fornecidos.

Geralmente, uma métrica que mede o tráfego de um aplicativo é caracterizada por um período semanal ou diário. Esse período pode ser confirmado executando series_periods_validate() que verifica um período semanal e diário.

Syntax

series_periods_validate(Série,period1 [ ,period2, . . . ] )

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Tipo Obrigatório Descrição
Série dynamic ✔️ Uma matriz de valores numéricos, normalmente a saída resultante de operadores make-series ou make_list .
period1, period2 etc. real ✔️ Os períodos a serem validados em unidades do tamanho do compartimento. Por exemplo, se a série estiver em compartimentos de 1h, um período semanal será de 168 compartimentos. Pelo menos um período é necessário.

Importante

  • O valor mínimo para cada um dos parâmetros de período é 4 e o máximo é metade do comprimento da série de entrada. Para um argumento de período fora desses limites, a pontuação de saída será 0.
  • A série temporal de entrada deve ser regular, ou seja, agregada em compartimentos constantes e sempre será o caso se tiver sido criada usando a make-series. Caso contrário, a saída é insignificante.
  • A função aceita até 16 períodos para validar.

Retornos

A função gera uma tabela com duas colunas:

  • periods: uma matriz dinâmica que contém os períodos a serem validados conforme fornecido na entrada.
  • scores: uma matriz dinâmica que contém uma pontuação entre 0 e 1. A pontuação mostra a significância de um período em sua respectiva posição na matriz de períodos .

Exemplo

A consulta a seguir insere um instantâneo de um mês do tráfego de um aplicativo, agregado duas vezes por dia (o tamanho do compartimento é de 12 horas).

print y=dynamic([80, 139, 87, 110, 68, 54, 50, 51, 53, 133, 86, 141, 97, 156, 94, 149, 95, 140, 77, 61, 50, 54, 47, 133, 72, 152, 94, 148, 105, 162, 101, 160, 87, 63, 53, 55, 54, 151, 103, 189, 108, 183, 113, 175, 113, 178, 90, 71, 62, 62, 65, 165, 109, 181, 115, 182, 121, 178, 114, 170])
| project x=range(1, array_length(y), 1), y  
| render linechart

Períodos de série.

Se você executar series_periods_validate() nesta série para validar um período semanal (14 pontos de comprimento), isso resultará em uma pontuação alta e com uma pontuação de 0 ao validar um período de cinco dias (10 pontos de duração).

print y=dynamic([80, 139, 87, 110, 68, 54, 50, 51, 53, 133, 86, 141, 97, 156, 94, 149, 95, 140, 77, 61, 50, 54, 47, 133, 72, 152, 94, 148, 105, 162, 101, 160, 87, 63, 53, 55, 54, 151, 103, 189, 108, 183, 113, 175, 113, 178, 90, 71, 62, 62, 65, 165, 109, 181, 115, 182, 121, 178, 114, 170])
| project x=range(1, array_length(y), 1), y  
| project series_periods_validate(y, 14.0, 10.0)

Saída

series_periods_validate_y_periods series_periods_validate_y_scores
[14.0, 10.0] [0.84, 0.0]