ISmVarianceAnalysis.DegreeOfFreedom

Синтаксис

DegreeOfFreedom: IVarianceAnalysisDegreeOfFreedom;

Описание

Свойство DegreeOfFreedom возвращает число степеней свободы.

Пример

Sub Main;

Var

VA: SmVarianceAnalysis;

res: Integer;

m: Array Of Double;

SS: IVarianceAnalysisSumSquared;

DF: IVarianceAnalysisDegreeOfFreedom;

UE: IVarianceAnalysisUnbiasedEstimation;

FS, FC, P: IVarianceAnalysisStatistics;

Begin

VA := New SmVarianceAnalysis.Create;

m := New Double[5, 3];

m[0, 0] := 1; m[0, 1] := 4; m[0, 2] := 1;

m[1, 0] := 2; m[1, 1] := 3; m[1, 2] := 2;

m[2, 0] := 3; m[2, 1] := 3; m[2, 2] := 1;

m[3, 0] := 4; m[3, 1] := 1; m[3, 2] := 2;

m[4, 0] := 5; m[4, 1] := 1; m[4, 2] := 1;

VA.Data := m;

VA.AnalysisType := VarianceAnalysisType.TwoFactor; // двухфакторный анализ

VA.ConfidenceLevel := 0.05;

res := VA.Execute;

If res <> 0 Then

Debug.WriteLine(VA.Errors);

Else

Debug.AssertMsg(False,"Результаты: ");

Debug.WriteLine("Сумма квадратов отклонений");

SS := VA.SumSquared;

Debug.WriteLine("строки : " + SS.Rows.ToString);

Debug.WriteLine("столбцы : " + SS.Columns.ToString);

Debug.WriteLine("погрешность : " + SS.Accuracy.ToString);

Debug.WriteLine("Итого: " + SS.Total.ToString);

Debug.WriteLine("=================================");

Debug.WriteLine("Число степеней свободы");

DF := VA.DegreeOfFreedom;

Debug.WriteLine("строки : " + DF.Rows.ToString);

Debug.WriteLine("столбцы : " + DF.Columns.ToString);

Debug.WriteLine("погрешность : " + DF.Accuracy.ToString);

Debug.WriteLine("итого: " + DF.Total.ToString);

Debug.WriteLine("=================================");

Debug.WriteLine("Несмещенная оценка суммы квадратов отклонений");

UE := VA.UnbiasedEstimation;

Debug.WriteLine("строки : " + UE.Rows.ToString);

Debug.WriteLine("столбцы : " + UE.Columns.ToString);

Debug.WriteLine("погрешность : " + UE.Accuracy.ToString);

Debug.WriteLine("=================================");

Debug.WriteLine("Значение статистики Фишера");

FS := VA.FisherStatistics;

Debug.WriteLine("строки : " + FS.Rows.ToString);

Debug.WriteLine("столбцы : " + FS.Columns.ToString);

Debug.AssertMsg(False,"=================================");

Debug.WriteLine("Критическое значение статистики Фишера");

FC := VA.FisherCritical;

Debug.WriteLine("строки : " + FC.Rows.ToString);

Debug.WriteLine("столбцы : " + FC.Columns.ToString);

Debug.WriteLine("=================================");

Debug.WriteLine("Вероятность");

P := VA.Probability;

Debug.WriteLine("строки : " + P.Rows.ToString);

Debug.WriteLine("столбцы : " + P.Columns.ToString);

If VA.VarianceEqualByRows Then

Debug.WriteLine("Fstat < Fcrit. Гипотеза о равенстве дисперсий фактора А (по строкам) принимается. Различие дисперсий незначимо");

Else

Debug.WriteLine("Fstat > Fcrit. Гипотеза о равенстве дисперсий фактора А (по строкам) отклоняется. Различие дисперсий значимо");

End If;

If VA.VarianceEqualByColumns Then

Debug.WriteLine("Fstat < Fcrit. Гипотеза о равенстве дисперсий фактора B (по столбцам) принимается. Различие дисперсий незначимо");

Else

Debug.WriteLine("Fstat > Fcrit. Гипотеза о равенстве дисперсий фактора B (по столбцам) отклоняется. Различие дисперсий значимо");

End If;

End If;

End Sub Main;

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

Module execution started

Результаты:

Сумма квадратов отклонений

строки: 0.26666666666666694

столбцы: 6.5333333333333341

погрешность: 18.133333333333297

Итого: 24.933333333333326

=================================

Число степеней свободы

строки: 4

столбцы: 2

погрешность: 8

итого: 14

=================================

Несмещенная оценка суммы квадратов отклонений

строки: 0.066666666666666735

столбцы: 3.2666666666666671

погрешность: 2.2666666666666622

=================================

Значение статистики Фишера

строки: 0.029411764705882443

столбцы: 1.4411764705882384

=================================

Критическое значение статистики Фишера

строки: 3.837853326929805

столбцы: 4.4589684100858102

=================================

Вероятность

строки: 0.99691358024691357

столбцы: 0.44880624426078908

Fstat < Fcrit. Гипотеза о равенстве дисперсий фактора А (по строкам) принимается. Различие дисперсий незначимо

Fstat < Fcrit. Гипотеза о равенстве дисперсий фактора B (по столбцам) принимается. Различие дисперсий незначимо

Module execution finished

См. также:

ISmVarianceAnalysis