Explained: IEmSerie;
Explained: Prognoz.Platform.Interop.Modeller.IEmSerie;
Свойство Explained определяет объясняемый ряд.
Если объясняемый ряд не задан, то корректный расчёт метода «Линейная регрессия» невозможен.
Для выполнения примера добавьте ссылку на системную сборку «Modeller».
Sub LinearRegression;
Var
ExprMod: IExpressModeller;
Ar: Array[14] Of Double;
Serie: IEmSerie;
Sett: IEmLinearRegressionSettings;
SList: IEmSeriesList;
Period: IEmPeriodSettings;
Begin
ExprMod := New ExpressModeller.Create;
Sett := ExprMod.CreateLinearRegressionSettings;
// Задаем объясняемый ряд
Ar[0] := 56; Ar[1] := 45; Ar[2] := 23; Ar[3] := 45;
Ar[4] := 65; Ar[5] := 23; Ar[6] := 54; Ar[7] := 87;
Ar[8] := 67; Ar[9] := 98; Ar[10] := 89; Ar[13] := 79;
Ar[11] := Double.Nan; Ar[12] := Double.Nan;
Serie := ExprMod.Series.Add(Ar, "X1", "Ряд данных 1");
Sett.Explained := Serie;
// Задаем объясняющий ряд
Ar[0] := 58; Ar[1] := 50; Ar[2] := 26; Ar[4] := 72;
Ar[5] := 28; Ar[6] := 62; Ar[7] := 95; Ar[8] := 74;
Ar[10] := 94; Ar[11] := 100; Ar[12] := 54; Ar[13] := 81;
Ar[3] := Double.Nan; Ar[9] := Double.Nan;
Serie := ExprMod.Series.Add(Ar, "X2", "Ряд данных 2");
SList := Sett.Explanatories;
SList.Add(Serie);
// Исключаем константу из расчётов
Sett.HasConstant := False;
// Задаем периоды расчёта
Period := Sett.Period;
Period.BeginPeriod := 0;
Period.EndPeriod := 13;
Period.EndFore := 4;
// Выполняем расчёт
ExprMod.EvaluateMethod("C:\LinearRegression.html", Sett, True);
End Sub LinearRegression;
Результат выполнения примера: будет выполнен расчёт метода «Линейная регрессия» по заданным параметрам, отчёт о расчёте будет сохранен в файл «C:\LinearRegression.html».
Imports Prognoz.Platform.Interop.Modeller;
…
Public Shared Sub LinearRegression();
Var
ExprMod: IExpressModeller;
Ar: Array[14] Of Double;
Serie: IEmSerie;
Sett: IEmLinearRegressionSettings;
SList: IEmSeriesList;
Period: IEmPeriodSettings;
Begin
ExprMod := New ExpressModeller.Create();
Sett := ExprMod.CreateLinearRegressionSettings();
// Задаем объясняемый ряд
Ar[0] := 56; Ar[1] := 45; Ar[2] := 23; Ar[3] := 45;
Ar[4] := 65; Ar[5] := 23; Ar[6] := 54; Ar[7] := 87;
Ar[8] := 67; Ar[9] := 98; Ar[10] := 89; Ar[13] := 79;
Ar[11] := Double.Nan; Ar[12] := Double.Nan;
Serie := ExprMod.Series.Add(Ar, "X1", "Ряд данных 1");
Sett.Explained := Serie;
// Задаем объясняющий ряд
Ar[0] := 58; Ar[1] := 50; Ar[2] := 26; Ar[4] := 72;
Ar[5] := 28; Ar[6] := 62; Ar[7] := 95; Ar[8] := 74;
Ar[10] := 94; Ar[11] := 100; Ar[12] := 54; Ar[13] := 81;
Ar[3] := Double.Nan; Ar[9] := Double.Nan;
Serie := ExprMod.Series.Add(Ar, "X2", "Ряд данных 2");
SList := Sett.Explanatories;
SList.Add(Serie);
// Исключаем константу из расчётов
Sett.HasConstant := False;
// Задаем периоды расчёта
Period := Sett.Period;
Period.BeginPeriod := 0;
Period.EndPeriod := 13;
Period.EndFore := 4;
// Выполняем расчёт
ExprMod.EvaluateMethod("C:\LinearRegression.html", Sett, True);
End Sub LinearRegression;
Результат выполнения примера: будет выполнен расчёт метода «Линейная регрессия» по заданным параметрам, отчёт о расчёте будет сохранен в файл «C:\LinearRegression.html».
См. также: