IMsCensus1Result.Irregula

Синтаксис

Irregula: ITimeSeries;

Irregula: Prognoz.Platform.Interop.Ms.ITimeSeries;

Описание

Свойство Irregula возвращает нерегулярную компоненту.

Пример

Приведен пользовательский метод расчёта, возвращающий сглаженный ряд для метода Census1.

Добавьте ссылки на системные сборки: Ms. Для примера Fore.NET также подключите системную сборку ForeSystem.

Public Function Census1Result(Result: Variant): ITimeSeries;
Var
    Census1Res: IMsCensus1Result;
    Series: ITimeSeries;
Begin
    Census1Res := Result 
As IMsCensus1Result;
    
// Выводим наименование метода
    Debug.WriteLine("Наименование метода: " + Census1Res.BaseMethod.Name);
    Debug.WriteLine(
"");
    
// Получаем нерегулярную компоненту и выводим её в окно консоли
    Series := Census1Res.Irregula;
    Debug.WriteLine(
"Нерегулярная компонента");
    Print(Series);
    
// Получаем отношение/разность и выводим в окно консоли
    Series := Census1Res.RatioDifferences;
    Debug.WriteLine(
"Отношение/разность");
    Print(Series);
    
// Получаем сезонную составляющую и выводим её в окно консоли
    Series := Census1Res.Seasonal;
    Debug.WriteLine(
"Сезонная составляющая");
    Print(Series);
    
// Получаем сезонную корректировку и выводим её в окно консоли
    Series := Census1Res.SeasonalAdjustment;
    Debug.WriteLine(
"Сезонная корректировка");
    Print(Series);
    
// Получаем тренд-циклическую компоненту и выводим её в окно консоли
    Series := Census1Res.TrendCycle;
    Debug.WriteLine(
"Тренд-циклическая компонента");
    Print(Series);
    
// Возвращаем сглаженный ряд
    Return Census1Res.MovingAverage;
End Function Census1Result;

// Процедура вывода значений ряда в окно консоли
Sub Print(Series: ITimeSeries);
Var
    CF: ICultureInfo;
    i: Integer;
    d: DateTime;
Begin
    CF := CultureInfo.Current;
    Debug.Indent;
    
For i := Series.StartIndex To Series.EndIndex Do
        d := Series.IndexToDate(i);
        Debug.WriteLine(CF.FormatShortDate(d) + 
": " + Series.Item(i));
    
End For;
    Debug.Unindent;
    Debug.WriteLine(
"");
End Sub Print;

Imports Prognoz.Platform.Interop.ForeSystem;
Imports Prognoz.Platform.Interop.Ms;

Public Shared Function Census1Result(Result: Object): ITimeSeries;
Var
    Census1Res: IMsCensus1Result;
    Series: ITimeSeries;
Begin
    Census1Res := Result 
As IMsCensus1Result;
    
// Выводим наименование метода
    System.Diagnostics.Debug.WriteLine("Наименование метода: " + Census1Res.BaseMethod.Name);
    System.Diagnostics.Debug.WriteLine(
"");
    
// Получаем нерегулярную компоненту и выводим её в окно консоли
    Series := Census1Res.Irregula;
    System.Diagnostics.Debug.WriteLine(
"Нерегулярная компонента");
    Print(Series);
    
// Получаем отношение/разность и выводим в окно консоли
    Series := Census1Res.RatioDifferences;
    System.Diagnostics.Debug.WriteLine(
"Отношение/разность");
    Print(Series);
    
// Получаем сезонную составляющую и выводим её в окно консоли
    Series := Census1Res.Seasonal;
    System.Diagnostics.Debug.WriteLine(
"Сезонная составляющая");
    Print(Series);
    
// Получаем сезонную корректировку и выводим её в окно консоли
    Series := Census1Res.SeasonalAdjustment;
    System.Diagnostics.Debug.WriteLine(
"Сезонная корректировка");
    Print(Series);
    
// Получаем тренд-циклическую компоненту и выводим её в окно консоли
    Series := Census1Res.TrendCycle;
    System.Diagnostics.Debug.WriteLine(
"Тренд-циклическая компонента");
    Print(Series);
    
// Возвращаем сглаженный ряд
    Return Census1Res.MovingAverage;
End Function;

// Процедура вывода значений ряда в окно консоли
Public Shared Sub Print(Series: ITimeSeries);
Var
    CultureInfoCls: CultureInfoClassClass = 
New CultureInfoClassClass();
    CF: CultureInfo;
    i: Integer;
    d: DateTime;
Begin
    CF := CultureInfoCls.Current;
    System.Diagnostics.Debug.Indent();
    
For i := Series.StartIndex To Series.EndIndex Do
        d := Series.IndexToDate(i);
        System.Diagnostics.Debug.WriteLine(CF.FormatShortDate(d) + 
": " + Series.Item[i]);
    
End For;
    System.Diagnostics.Debug.Unindent();
    System.Diagnostics.Debug.WriteLine(
"");
End Sub;

В результате выполнения примера в окно консоли будут выведены результаты расчета методом Census1.

Данный пользовательский метод может быть использован в детерминированном уравнении, в калькуляторе в анализе временных рядов и в редакторе выражения. Например, использование пользовательского метода в детерминированном уравнении:

IMSCENSUS1RESULT_IRREGULA.Census1Result(census1(X1, SetPeriod("01.01.2000", "01.01.2015"), MsOutputCensus1SeriesType.MovingAverage, SeasonalityType.Additive))

Где:

См. также:

IMsCensus1Result