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 |
0 комментариев