Dela via


series_seasonal()

Beräknar säsongskomponenten i en serie enligt den identifierade eller angivna säsongsperioden.

Syntax

series_seasonal(serie [,period ])

Läs mer om syntaxkonventioner.

Parametrar

Namn Typ Obligatorisk Beskrivning
Serien dynamic ✔️ En matris med numeriska värden.
Period int Antalet lagerplatser för varje säsongsperiod. Det här värdet kan vara ett positivt heltal. Som standard anges värdet till -1, vilket automatiskt identifierar perioden med hjälp av series_periods_detect() med ett tröskelvärde på 0,7. Om säsongsvariationer inte identifieras returnerar funktionen nollor. Om ett annat värde anges ignoreras säsongsvariationer och en serie nollor returneras.

Returer

En dynamisk matris med samma längd som serieindata som innehåller seriens beräknade säsongskomponent. Säsongskomponenten beräknas som median för alla värden som motsvarar platsen för lagerplatsen, över perioderna.

Exempel

Identifiera perioden automatiskt

I följande exempel identifieras seriens period automatiskt. Den första seriens period identifieras som sex lagerplatser och de andra fem intervallen. Den tredje seriens period är för kort för att identifieras och returnerar en serie nolla. Se nästa exempel på hur du framtvingar perioden.

print s=dynamic([2, 5, 3, 4, 3, 2, 1, 2, 3, 4, 3, 2, 1, 2, 3, 4, 3, 2, 1, 2, 3, 4, 3, 2, 1])
| union (print s=dynamic([8, 12, 14, 12, 10, 10, 12, 14, 12, 10, 10, 12, 14, 12, 10, 10, 12, 14, 12, 10]))
| union (print s=dynamic([1, 3, 5, 2, 4, 6, 1, 3, 5, 2, 4, 6]))
| extend s_seasonal = series_seasonal(s)

Resultat

s s_seasonal
[2,5,3,4,3,2,1,2,3,4,3,2,1,2,3,4,3,2,1,2,3,4,3,2,1] [1.0,2.0,3.0,4.0,3.0,2.0,1.0,2.0,3.0,4.0,3.0,2.0,1.0,2.0,3.0,4.0,3.0,2.0,1.0,2.0,3.0,4.0,3.0,2.0,1.0]
[8,12,14,12,10,10,12,14,12,10,10,12,14,12,10,10,12,14,12,10] [10.0,12.0,14.0,12.0,10.0,10.0,12.0,14.0,12.0,10.0,10.0,12.0,14.0,12.0,10.0,10.0,12.0,14.0,12.0,10.0]
[1,3,5,2,4,6,1,3,5,2,4,6] [0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]

Framtvinga en punkt

I det här exemplet är seriens period för kort för att identifieras av series_periods_detect(), så vi tvingar uttryckligen perioden att hämta säsongsmönstret.

print s=dynamic([1, 3, 5, 1, 3, 5, 2, 4, 6]) 
| union (print s=dynamic([1, 3, 5, 2, 4, 6, 1, 3, 5, 2, 4, 6]))
| extend s_seasonal = series_seasonal(s, 3)

Resultat

s s_seasonal
[1,3,5,1,3,5,2,4,6] [1.0,3.0,5.0,1.0,3.0,5.0,1.0,3.0,5.0]
[1,3,5,2,4,6,1,3,5,2,4,6] [1.5,3.5,5.5,1.5,3.5,5.5,1.5,3.5,5.5,1.5,3.5,5.5]