ISmCensus1.SeasonalAdjustment

Синтаксис

SeasonalAdjustment: Array;

Описание

Свойство SeasonalAdjustment возвращает сезонную корректировку.

Пример

Sub Main;

Var

s: Array Of Double;

census1: SmCensus1;

res: Integer;

Sub Print(Data: Array Of Double);

Var

i: Integer;

CI: ICultureInfo;

Begin

CI := CultureInfo.Current;

Debug.WriteLine("---Begin---");

For i := 0 To Data.Length - 1 Do

If Double.IsNan(Data[i]) Then

Debug.WriteLine("---empty---");

Else

Debug.WriteLine(i.ToString + ", " + CI.FormatDoublePrec(Data[i], 4));

End If;

End For;

Debug.WriteLine("---End---");

End Sub Print;

Begin

//значения s

s := New Double[45];

s[0] := 670.2000183;

s[1] := 576.0680563;

s[2] := 717.6484268;

s[3] := 856.9105808;

s[4] := 885.4609516;

s[5] := 1011.846431;

s[6] := 995.4496292;

s[7] := 1064.74221;

s[8] := 1033.324656;

s[9] := 780.8584552;

s[10] := 657.5033113;

s[11] := 654.5472579;

s[12] := 678.2380139;

s[13] := 642.4128544;

s[14] := 751.9611194;

s[15] := 786.7090365;

s[16] := 884.5042879;

s[17] := 1008.308908;

s[18] := 1108.363628;

s[19] := 1072.737175;

s[20] := 1019.183752;

s[21] := 895.5601672;

s[22] := 811.0306101;

s[23] := 756.601764;

s[24] := 826.6160466;

s[25] := 762.3903317;

s[26] := 931.5707266;

s[27] := 1026.666524;

s[28] := 1114.124119;

s[29] := 1099.626392;

s[30] := 1189.16892;

s[31] := 1092.343791;

s[32] := 1087.503861;

s[33] := 971.6522721;

s[34] := 826.2502823;

s[35] := 789.6322825;

s[36] := 797.0210578;

s[37] := 770.0206;

s[38] := 832.1481674;

s[39] := 1014.565844;

s[40] := 980.4343089;

s[41] := 1195.843135;

s[42] := 1117.405835;

s[43] := 1142.834834;

s[44] := 1239.704489;

census1 := New SmCensus1.Create;

census1.Serie.Value := s;

census1.ModelPeriod.FirstPoint := 1;

census1.ModelPeriod.LastPoint := 45;

census1.SeasonalComponent.Mode := SeasonalityType.Multiplicative;

census1.CenterMovingAverage := True;

census1.SeasonalComponent.Cycle := 12;

res := census1.Execute;

If res<>0 Then

Debug.WriteLine(census1.Errors);

Else

Debug.WriteLine("=== Cезонная составляющая ===");

Print(census1.Seasonal);

Debug.WriteLine("=== Cезонная корректировка ===");

Print(census1.SeasonalAdjustment);

End If;

End Sub Main;

После выполнения примера в окно консоли будут выведены сезонная составляющая и сезонная корректировка:

Module execution started

=== Cезонная составляющая ===

---Begin---

0, 83.3553

1, 79.7032

2, 90.0515

3, 100.0018

4, 109.4385

5, 115.1229

6, 122.3267

7, 121.5546

8, 113.8807

9, 98.1561

10, 86.3634

11, 80.0453

12, 83.3553

13, 79.7032

14, 90.0515

15, 100.0018

16, 109.4385

17, 115.1229

18, 122.3267

19, 121.5546

20, 113.8807

21, 98.1561

22, 86.3634

23, 80.0453

24, 83.3553

25, 79.7032

26, 90.0515

27, 100.0018

28, 109.4385

29, 115.1229

30, 122.3267

31, 121.5546

32, 113.8807

33, 98.1561

34, 86.3634

35, 80.0453

36, 83.3553

37, 79.7032

38, 90.0515

39, 100.0018

40, 109.4385

41, 115.1229

42, 122.3267

43, 121.5546

44, 113.8807

---End---

=== Cезонная корректировка ===

---Begin---

0, 804.0278

1, 722.7664

2, 796.9308

3, 856.8953

4, 809.0948

5, 878.9271

6, 813.7635

7, 875.9371

8, 907.3747

9, 795.5273

10, 761.3219

11, 817.7211

12, 813.6709

13, 806.0062

14, 835.0342

15, 786.6950

16, 808.2206

17, 875.8543

18, 906.0688

19, 882.5143

20, 894.9574

21, 912.3837

22, 939.0908

23, 945.2170

24, 991.6775

25, 956.5365

26, 1 034.4863

27, 1 026.6482

28, 1 018.0370

29, 955.1760

30, 972.1258

31, 898.6442

32, 954.9501

33, 989.9053

34, 956.7137

35, 986.4818

36, 956.1729

37, 966.1098

38, 924.0800

39, 1 014.5478

40, 895.8772

41, 1 038.7535

42, 913.4606

43, 940.1819

44, 1 088.5993

---End---

Module execution finished

См. также:

ISmCensus1