49048 (Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии), страница 5

2016-07-30СтудИзба

Описание файла

Документ из архива "Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "49048"

Текст 5 страницы из документа "49048"

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

Рис. 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

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5137
Авторов
на СтудИзбе
441
Средний доход
с одного платного файла
Обучение Подробнее