series_periods_validate()

Controlla se una serie temporale contiene modelli periodici di lunghezza specificata.

Spesso una metrica che misura il traffico di un'applicazione è caratterizzato da un periodo settimanale o giornaliero. Questo periodo può essere confermato eseguendo series_periods_validate() i controlli per un periodo settimanale e giornaliero.

Sintassi

series_periods_validate(Serie,period1 [ ,period2, . . . ] )

Altre informazioni sulle convenzioni di sintassi.

Parametri

Nome Tipo Obbligatoria Descrizione
Serie dynamic ✔️ Matrice di valori numerici, in genere l'output risultante degli operatori make-series o make_list .
periodo1, periodo2 e così via. real ✔️ Periodi da convalidare in unità di misura della dimensione del contenitore. Ad esempio, se la serie è in contenitori 1h, un periodo settimanale è 168 bin. È necessario almeno un periodo.

Importante

  • Il valore minimo per ogni parametro di periodo è 4 e la metà della lunghezza della serie di input. Per un argomento periodo al di fuori di questi limiti, il punteggio di output sarà 0.
  • La serie temporale di input deve essere regolare, ovvero aggregata in contenitori costanti, ed è sempre il caso se è stata creata usando make-series. In caso contrario, l'output è privo di significato.
  • La funzione accetta fino a 16 periodi da convalidare.

Restituisce

La funzione restituisce una tabella con due colonne:

  • periodi: matrice dinamica che contiene i punti da convalidare come specificato nell'input.
  • score: matrice dinamica che contiene un punteggio compreso tra 0 e 1. Il punteggio mostra il significato di un punto nella rispettiva posizione nella matrice di periodi .

Esempio

La query seguente incorpora uno snapshot di un mese del traffico di un'applicazione, aggregato due volte al giorno (la dimensione del contenitore è di 12 ore).

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

Periodi di serie.

Se si esegue series_periods_validate() in questa serie per convalidare un periodo settimanale (14 punti di lunghezza) si ottiene un punteggio elevato e con un punteggio pari a 0 quando si convalida un periodo di cinque giorni (10 punti di lunghezza).

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)

Output

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