Width: Integer;
Свойство Width определяет размер окна.
Под размером окна понимается интервал времени, на котором будет определятся среднее значение элементов. Чем больше размер окна, тем более «гладкий» получается ряд. Размер окна должен быть не меньше двух и не больше длины сглаживаемого ряда.
По умолчанию свойство имеет значение «5».
Sub Main;
Var
MS: SmMedianSmoothing;
s, ar: Array Of Double;
d: Double;
res, i: Integer;
Begin
s := New Double[10];
s[0] := 6;
s[1] := 5;
s[2] := 7;
s[3] := 28;
s[4] := 1;
s[5] := 10;
s[6] := 9;
s[7] := 10;
s[8] := 4;
s[9] := 8;
MS := New SmMedianSmoothing.Create;
MS.Serie.Value := s;
MS.ModelPeriod.FirstPoint := 1;
MS.ModelPeriod.LastPoint := 10;
MS.MissingData.Method := MissingDataMethod.Casewise;
MS.Width := 2;
res := MS.Execute;
If res <> 0 Then
Debug.WriteLine(MS.Errors);
Else
d := Ms.SummaryStatistics.DW;
Debug.WriteLine("Статистика Дарбина-Уотсона: " + d.ToString);
Debug.WriteLine("== Сглаженный ряд ==");
ar := MS.Fitted;
For i := 0 To Ms.ModelPeriod.LastPoint - 1 Do
d := ar[i];
Debug.WriteLine(i.ToString + ", " + d.ToString);
End For;
End If;
End Sub Main;
После выполнения примера в окно консоли будут выведены заданная статистика и сглаженный ряд:
Module execution started
Статистика Дарбина-Уотсона: 3.2236641221374045
== Сглаженный ряд ==
0, 5.5
1, 6
2, 17.5
3, 14.5
4, 5.5
5, 9.5
6, 9.5
7, 7
8, 6
9, 1.#QNAN
Module execution finished
См. также: