ISmMedianSmoothing.MissingData

Синтаксис Fore

MissingData: IMissingData;

Синтаксис Fore.NET

MissingData: Prognoz.Platform.Interop.Stat.SlMissingData;

Описание

Свойство MissingData определяет параметры обработки пропусков.

Комментарии

По умолчанию обработка пропусков не выполняется.

Пример Fore

Добавьте ссылку на системную сборку Stat.

Sub UserProc;
Var
    MS: SmMedianSmoothing;
    s: Array[10Of Double;
    ar: Array Of Double;
    res, i: Integer;
Begin
    MS := New SmMedianSmoothing.Create;
    s[0] := 6;  s[1] := 5;
    s[2] := 7;  s[3] := Double.Nan;
    s[4] := 1;  s[5] := 10;
    s[6] := 9;  s[7] := 10;
    s[8] := 8;  s[9] := Double.Nan;
    MS.Serie.Value := s;
    MS.ModelPeriod.FirstPoint := 1;
    MS.ModelPeriod.LastPoint := 10;
    MS.MissingData.Method := MissingDataMethod.SampleAverage;
    MS.Width := 2;
    res := MS.Execute;
    If res <> 0 Then
        Debug.WriteLine(MS.Errors);
        Else
            Debug.WriteLine("=== Сглаженный ряд ===");
            Debug.Indent;
            ar := MS.Fitted;
            For i := 0 To Ms.ModelPeriod.LastPoint - 1 Do
                Debug.WriteLine((i+1).ToString + ". " + ar[i].ToString);
            End For;
            Debug.Unindent;
    End If;
End Sub UserProc;

После выполнения примера в окно консоли будет выведен сглаженный ряд.

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.Stat;

Public Shared Sub Main(Params: StartParams);
Var
    MS: SmMedianSmoothing;
    s: Array[10Of Double;
    ar: System.Array;
    res, i: Integer;
Begin
    MS := New SmMedianSmoothing.Create();
    s[0] := 6;  s[1] := 5;
    s[2] := 7;  s[3] := Double.Nan;
    s[4] := 1;  s[5] := 10;
    s[6] := 9;  s[7] := 10;
    s[8] := 8;  s[9] := Double.Nan;
    MS.Serie.Value := s;
    MS.ModelPeriod.FirstPoint := 1;
    MS.ModelPeriod.LastPoint := 10;
    MS.MissingData.Method := MissingDataMethod.mdmSampleAverage;
    MS.Width := 2;
    res := MS.Execute();
    If res <> 0 Then
        System.Diagnostics.Debug.WriteLine(MS.Errors);
        Else
            System.Diagnostics.Debug.WriteLine("=== Сглаженный ряд ===");
            System.Diagnostics.Debug.Indent();
            ar := MS.Fitted;
            For i := 0 To Ms.ModelPeriod.LastPoint - 1 Do
                System.Diagnostics.Debug.WriteLine((i+1).ToString() + ". " + ar[i].ToString());
            End For;
            System.Diagnostics.Debug.Unindent();
    End If;
End Sub;

См. также:

ISmMedianSmoothing