series_periods_validate()

Überprüft, ob eine Zeitreihe periodische Muster mit den angegebenen Längen enthält.

Häufig ist eine Metrik, die den Datenverkehr einer Anwendung misst, durch einen wöchentlichen oder täglichen Zeitraum gekennzeichnet. Dieser Zeitraum kann bestätigt werden, indem Sie die Überprüfungen für einen wöchentlichen und täglichen Zeitraum ausführen series_periods_validate() .

Syntax

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

Erfahren Sie mehr über Syntaxkonventionen.

Parameter

Name Typ Erforderlich BESCHREIBUNG
Serie dynamic ✔️ Ein Array numerischer Werte, in der Regel die resultierende Ausgabe von Make-Series- oder make_list-Operatoren .
Punkt1, Punkt2 usw. real ✔️ Die zu überprüfenden Punkte in Einheiten der Bin-Größe. Wenn sich die Reihe beispielsweise in 1h-Bins befindet, beträgt ein wöchentlicher Zeitraum 168 Bins. Mindestens ein Zeitraum ist erforderlich.

Wichtig

  • Der minimale Wert für jeden Der Periodenparameter ist 4 , und der maximal ist die Hälfte der Länge der Eingabereihe. Für ein Punktargument außerhalb dieser Grenzen ist die Ausgabebewertung 0.
  • Die Eingabezeitreihen müssen regelmäßig sein, d. h. aggregiert in konstanten Bins, und dies ist immer der Fall, wenn sie mithilfe von Make-Series erstellt wurde. Andernfalls ist die Ausgabe bedeutungslos.
  • Die Funktion akzeptiert bis zu 16 Perioden zur Überprüfung.

Gibt zurück

Die Funktion gibt eine Tabelle mit zwei Spalten aus:

  • perioden: Ein dynamisches Array, das die zu überprüfenden Punkte enthält, wie in der Eingabe angegeben.
  • scores: Ein dynamisches Array, das eine Bewertung zwischen 0 und 1 enthält. Die Bewertung zeigt die Bedeutung eines Zeitraums in seiner jeweiligen Position im Periodenarray an.

Beispiel

Die folgende Abfrage bettet einen Momentaufnahme eines Monats des Datenverkehrs einer Anwendung ein, der zweimal täglich aggregiert wird (die Bin-Größe beträgt 12 Stunden).

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

Reihenabschnitte.

Wenn Sie diese Reihe ausführen series_periods_validate() , um einen wöchentlichen Zeitraum (14 Punkte lang) zu überprüfen, ergibt dies eine hohe Bewertung und eine Bewertung von 0 , wenn Sie einen Zeitraum von fünf Tagen (10 Punkte lang) überprüfen.

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)

Ausgabe

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