3.2 Проверка гипотезы о нормальности остатков в модели вторичного рынка жилья в г. Минске

В модели исследуется зависимость стоимости вторичного жилья в г.Минске (Cena) от следующих факторов: общей площади квартиры (PlOb), возраста дома (Vozrast). Для работы использованы данные о 154 квартирах г. Минска за 2006 год. В модель также включена бинарная, «фиктивная» переменная Type, которая принимает значение 1, если квартира находится в кирпичном доме и значение 0 для всех остальных случаев.

Построенная модель стоимости квартир в г. Минске имеет вид:

 (1)

Все коэффициенты регрессии статистически значимы, что показывает t-статистика и соответствующие значения вероятности (p), которые ниже уровня статистической значимости 0,05.

Для построенной модели (1) коэффициент корреляции  (значение близко к 1, что указывает на тесную свяь между зависимой переменной и факторами). Значение критерия Фишера для проверки гипотезы о достоверности коэффициента корреляции: ; (R достоверно отличен от 0, изучаемый признак имеет связь хотя бы с одним из регрессоров). Коэффициент детерминации , т.е. 90% дисперсии результативного признака обусловлено влиянием регрессии, а 10% - другими факторами. Анализ остатков произведён при помощи статистики Дарбина-Уотсона , коэффициент автокорреляции остатков . Значит, автокорреляция в остатках отсутствует.

Остатки распределены нормально:  при   .

Рис. 1 График остатков на нормальной вероятностной бумаге

На рис. 1 значения по оси y представляют собой функциональное преобразование кривой нормального распределения в прямую. Если наблюдаемые остатки, представленные на оси х, распределяются по нормальному закону, то все значения попадают на прямую линию на графике. В представленном графике остатки расположены достаточно близко к линии, а следовательно можно сделать предположение об их нормальном распределении.


Рис. 2 Гистограмма распределения остатков

Для графической оценки вида распределения также приводится гистограмма распределения остатков (рис.2). Его можно трактовать как соответствующее нормальному.

Рассмотрим график зависимости остатков εiот теоретических значений результативного признака  (рис. 3).

Рис. 3 График зависимости остатков εiот теоретических значений результативного признака .

Из рисунка 3 можно сделать вывод о наличии гетероскедастичности: остатки εi имеют неодинаковую дисперсию.

Уравнение регрессии имеет наглядную интерпретацию. Так, увеличение общей площади квартиры на 1м2 увеличивает ее цену на 909,445 у.е. Отрицательное значение коэффициента при Vozrast (-58,685) означает, что увеличение возраста квартиры на 1год уменьшает ее цену на 58,685у.е. Квартира в кирпичном доме (Type=1) стоит дороже на 1914,209 у.е., чем аналогичная квартира, например, в панельном доме.

Использование данной модели для прогноза возможно в случае устранения гетероскедастичности, связанной с неоднородностью выборки. Для этого необходимо провести предварительный отбор однородных случаев, а затем осуществить построение модели.


ЗАКЛЮЧЕНИЕ

Математическая статистика и ее применение в экономике - эконометрика - позволяют строить экономические модели и оценивать их параметры, проверять гипотезы о свойствах экономических показателей и формах их связи. В основе методов, с помощью которых строятся экономические модели, лежит корреляционно-регрессионный анализ. Множественный регрессионный анализ заключается в определении аналитического выражения связи, в котором изменение одной величины (называемой зависимой) обусловлено влиянием нескольких независимых величин, а множество всех прочих факторов, также оказывающих влияние на зависимую переменную, принимается за постоянные и средние значения.

Наиболее распространенным в практике статистического оценивания параметров уравнений регрессии является метод наименьших квадратов (МНК). Этот метод основан на ряде предпосылок относительно природы данных и результатов построения модели. Основные из них - это некоррелированность факторов, входящих в уравнение, линейность связи, отсутствие автокорреляции остатков, равенство их математических ожиданий нулю и постоянная дисперсия (гомоскедастичность). Эмпирические данные не всегда обладают такими характеристиками, т.е. предпосылки МНК нарушаются. Применение этого метода в чистом виде может привести к таким нежелательным результатам, как смещение оцениваемых параметров, снижение их состоятельности, устойчивости, а в некоторых случаях может совсем не дать решения. В случае нарушения предпосылок МНК, необходимо корректировать модель.

После оценивания уравнения регрессии по методу наименьших квадратов нужно всегда исследовать остатки на нормальность. В случае нарушения данного предположения модель не является адекватной и не может быть использована для прогнозов.

В пакете STATISTICA имеется внутренний язык программирования Statistica Visual, который добавляет богатый арсенал из более чем 10000 новых функций к стандартному синтаксису Microsoft Visual Basic и является, таким образом, одним из самых функционально богатых и обширных интерфейсов прикладного программирования. SVB также предоставляет широкие возможности по созданию макросов.

В ходе написания данной курсовой работы был создан макрос на языке SVB для проверки гипотезы о нормальности остатков регрессии. Необходимость разработки данного приложения связана с особенностями осуществления регрессионного анализа в пакете STATISTICA. Написанный модуль был использован при эконометрическом моделировании вторичного рынка жилья в г. Минске. Разработанное программное средство может в дальнейшем применятся при построении регрессионных моделей в пакете STATISTICA.


 ПРИЛОЖЕНИЕ А

 

Листинг программы

Option Base 1

Dim S1 As Spreadsheet

Dim NewSpreadsheet As New Spreadsheet

Public AlphaValue As Double

Public Alpha As Double

Dim VarList1 () As Long

Dim VarList2 () As Long

Dim Nvars As Long

Dim InList1 As Long

Dim InList2 As Long

Dim ret As Integer

Sub Main

On Error GoTo NoInputSpreadsheet

Nvars = ActiveDataSet.NumberOfVariables

On Error GoTo Finish

ReDim VarList1(1 To Nvars)

ReDim VarList2(1 To Nvars)

If Not InputDialog Then GoTo Finish

MultipleRegression

NormalDistribution


Finish:

Exit Sub

NoInputSpreadsheet:

MsgBox "Open a data file (Spreadsheet) for this analysis", _

vbCritical

End Sub

Function InputDialog As Boolean

On Error GoTo Finish

InputDialog=False

Begin Dialog UserDialog 390,147, _

"Multiple Regression. Residual Analysis", .UI ' %GRID:10,7,1,1

PushButton 20,14,120,21,"Variables",.VariableSelection

Text 40,42,70,14,"Grouping:",.Text1

Text 110,42,180,14,"none",.Text2

Text 30,56,80,14,"Dependent:",.Text3

Text 110,56,180,14,"none",.Text4

Text 30,84,200,14,"Alpha:",.Text5

TextBox 220,77,90,21,.AlphaValue

Text 30,104,200,14,"Alpha for highlighting effects:",.Text6

TextBox 220,100,90,21,.Alpha

OKButton 310,14,70,21,.OkButton

CancelButton 310,42,70,21,.CancelButton

End Dialog

Dim dlg As UserDialog

dlg.AlphaValue=",05"

dlg.Alpha=",05"

TryAgain:

On Error GoTo Finish

Dialog dlg

On Error GoTo BadAlphaValue

AlphaValue = CDbl(dlg.AlphaValue)

Alpha = CDbl(dlg.Alpha)

InputDialog=True

Finish:

Exit Function

BadAlphaValue:

MsgBox "Bad alpha value; please specify a valid alpha value."

GoTo TryAgain

End Function

Private Function UI(DlgItem$, Action%, SuppValue&) As Boolean

Dim ok As Boolean

Select Case Action%

Case 1 ' Dialog box initialization

Case 2 ' Value changing or button pressed

UI = True

Select Case DlgItem

Case "CancelButton"

UI=False

Case "OkButton"

ok=False

If InList1<1 Or InList2<1 Then

ok=True

GoTo DoVariables

End If

UI=False

Case "VariableSelection"

ok=False

DoVariables:

ret = SelectVariables2 (ActiveDataSet, _

"Select dependent and independent variable lists:", _

1, Nvars, VarList1, InList1, "Dependent var. (or list for batch):", _

1, Nvars, VarList2, InList2, "Independent variable list:")

If ret=0 Then GoTo Finish

If InList1>0 Then


DlgText "Text4", "Selected"

Else

DlgText "Text4", "none"

End If

If InList2>0 Then

DlgText "Text2", "Selected"

Else

DlgText "Text2", "none"

End If

End Select

End Select

Finish:

End Function

Sub MultipleRegression

Set S1 = ActiveSpreadsheet

Dim newanalysis2 As Analysis

Set newanalysis2 = Analysis (scMultipleRegression,S1)


With newanalysis2.Dialog

Variables = Array(VarList1,VarList2)

InputFile = scRegRawData

CasewiseDeletionOfMD = True

PerformDefaultNonStepwiseAnalysis = False

ReviewDescriptiveStatistics = False

ExtendedPrecisionComputations = False

BatchProcessingAndPrinting = False

End With

newanalysis2.Run

With newanalysis2.Dialog

.ComputeConfidenceLimits = True

.AlphaForLimits = AlphaValue

.PLevelForHighlighting = Alpha

End With

newanalysis2.RouteOutput(newanalysis2.Dialog.Summary).Visible = True

newanalysis2.Run

With newanalysis2.Dialog

RawResiduals = True

StandardResidualPlusMinusSigmaOutliers = True

RawPredictedValues = True

MaxNumberOfCasesInSpreadsheetsAndGraphs = 100000

End With

newanalysis2.RouteOutput(newanalysis2.Dialog.Summary).Visible = True

newanalysis2.RouteOutput(newanalysis2.Dialog.HistogramOfResiduals).Visible = True

newanalysis2.RouteOutput(newanalysis2.Dialog.DurbinWatsonStatistics).Visible = True

newanalysis2.RouteOutput(newanalysis2.Dialog.ScatterplotOfPredictedVsResiduals).Visible = True

newanalysis2.RouteOutput(newanalysis2.Dialog.NormalPlotOfResiduals).Visible = True

Set ResSpreadsheetCollection=newanalysis2.Dialog.Summary

Set ResSpreadsheet=ResSpreadsheetCollection.Item(1)

Dim n As Long

n=ResSpreadsheet.NumberOfCases-4

Set Cells=ResSpreadsheet.CellsRange( _

1, 3,n, 3)

Cells.Select

ResSpreadsheet.CopyWithHeaders

NewSpreadsheet.SetSize n, 1

NewSpreadsheet.Visible=True

Set Cells=NewSpreadsheet.CellsRange(1,1,1,1)

Cells.Select

NewSpreadsheet.Paste

End Sub

Sub NormalDistribution

Dim newanalysis3 As Analysis

Set newanalysis3 = Analysis (scDistributions, NewSpreadsheet)

With newanalysis3.Dialog

.FitContinuousDistributions = True

.ContinuousDistribution = scNonNormal

End With

newanalysis3.Run

With newanalysis3.Dialog

Variable = "1"

Distribution = scNonNormal

KolmogorvNo = True

CombineBinsForChiSquare = True

FrequencyDistribution = True

RawFrequencies = True

End With

newanalysis3.RouteOutput(newanalysis3.Dialog.Summary).Visible = True

newanalysis3.RouteOutput(newanalysis3.Dialog.PlotOfDistribution).Visible = True

End Sub


ПРИЛОЖЕНИЕ Б

Листинг программы

Sub Main

Dim bars As CommandBars

Set bars = CommandBarOptions.CommandBars(scBarTypeToolBar)

Dim newBar As CommandBar

Set newBar = bars.Add("CUSTOM")

newBar.InsertMacroButton 1, "d:\work\Macros\_1_\regres-normal.svb" , "Нормальность остатков"

newBar.InsertSeparator 2

newBar.Item(1).DisplayMode = scCommandDisplayTextAndImage

End Sub


ПРИЛОЖЕНИЕ В

Таблица 1

Глобальные переменные

Переменные Описание переменных Значение переменных
Dim S1 As Spreadsheet Объект таблица Текущая таблица
Dim NewSpreadsheet As New Spreadsheet Объект таблица Таблица для остатков
Public AlphaValue As Double Переменная типа Double
Public Alpha As Double Переменная типа Double
Dim VarList1() As Long Динамический массив типа Long Список зависимых переменных
Dim VarList2() As Long Динамический массив типа Long Список независимых переменных
Dim Nvars As Long Переменная типа Long Количество переменных в текущей таблице
Dim InList1 As Long Переменная типа Long Номера зависимых переменных
Dim InList2 As Long Переменная типа Long Номера независимых переменных
Dim ret As Integer Переменная типа Integer

Информация о работе «Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии»
Раздел: Информатика, программирование
Количество знаков с пробелами: 48568
Количество таблиц: 2
Количество изображений: 25

0 комментариев


Наверх