Рефетека.ру / Информатика и програм-ие

Курсовая работа: Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

СОДЕРЖАНИЕ


ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ И ТЕРМИНОВ

ВВЕДЕНИЕ

1. ПРОГРАММИРОВАНИЕ В STATISTICA

2. ПРЕДПОСЫЛКИ МЕТОДА НАИМЕНЬШИХ КВАДРАТОВ И ИХ РЕАЛИЗАЦИЯ В STATISTICA

2.1. Модель множественной линейной регрессии

2.2. Требования к остаткам

2.3. Проверка гипотезы о нормальности остатков в модуле MULTIPLE REGRESSION STATISTICA

3. СОЗДАНИЕ МАКРОСА ДЛЯ ПРОВЕРКИ ГИПОТЕЗЫ О НОРМАЛЬНОСТИ ОСТАТКОВ

3.1. Описание макроса

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

ЗАКЛЮЧЕНИЕ

ПРИЛОЖЕНИЕ А. Листинг программы

ПРИЛОЖЕНИЕ Б. Листинг программы

ПРИЛОЖЕНИЕ В. Глобальные переменные


ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ И ТЕРМИНОВ


SVB - Statistica Visual Basic.

МНК - метод наименьших квадратов.


ВВЕДЕНИЕ


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

Создание макросов - полезная и зачастую необходимая процедура, которая присутствует во многих программных продуктах, в том числе и в программе STATISTICA. Основное ее назначение - автоматизация обработки данных и соответственно значительная экономия времени. В ходе выполнения множественного регрессионного анализа в модуле Multiple Regression пакета STATISTICA исследование остатков на нормальность можно осуществить лишь графическими методами, что приводит к необходимости обращаться к другому встроенному модулю (Distribution Fitting), что требует значительных затрат времени. Для решения данной проблемы был написан макрос на языке SVB.

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

Целью данной курсовой работы является создание макроса на языке SVB для проверки гипотезы о нормальности остатков множественной регрессии.

Для достижения поставленной цели необходимо решить следующие задачи:

- изучить возможности программирования на языке SVB в пакете STATISTICA;

- рассмотреть модель множественной линейной регрессии и предпосылки МНК;

- описать процесс проверки гипотезы о нормальности остатков в модуле MULTIPLE REGRESSION STATISTICA;

- создать макрос для проверки гипотезы о нормальности остатков;

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

В курсовой работе использованы анализ и синтез, аналитический метод, графический метод, методы моделирования и проектирования.

Работа представлена на 48 страницах и состоит из введения, трех разделов (пяти подразделов), заключения, списка использованных источников, приложений.

В первом разделе исследуются возможности программирования на языке SVB в пакете STATISTICA. Во втором разделе раскрываются предпосылки МНК и их реализация в STATISTICA. Третий раздел носит исследовательский характер. В нем описывается создание и применение макроса для проверки гипотезы о нормальности остатков.

В данной курсовой работе была использована литература отечественных и зарубежных авторов. Большое внимание уделялось учебным пособиям таких авторов, как И.И. Елисеева, О.Н. Салманов, Кристофер Доугерти и др. При написании курсовой работы также были использованы данные Интернет-источников.


1. ПРОГРАММИРОВАНИЕ В STATISTICA


STATISTICA Visual Basic (SVB) - это язык программирования, интегрированный в программу STATISTICA. Он предоставляет намного больше возможностей, чем просто "вспомогательный язык программирования". SVB использует огромные преимущества объектно-ориентированной структуры системы STATISTICA и позволяет получить доступ практически ко всем функциональным возможностям пакета программными средствами. [советник по макросам-СПМ]

Очень часто при статистической обработке однотипных наборов данных приходится периодически и многократно выполнять одну и ту же серию операций. Сложные процедуры анализа и графический вывод результатов можно записать как макрос SVB для дальнейшего использования и редактирования. Макросы представляют собой самостоятельные блоки, которые легко встраиваются в другие приложения. [советник по макросам-СПМ]

Существует несколько методов создания макросов SVB:

Автоматическая запись макроса. Каждый раз при выполнении процедур из меню Statistics или Graphs, SVB записывает в фоновом режиме программный код, соответствующий всем спецификациям процедур и параметрам вывода. Этот код может впоследствии многократно выполняться и редактироваться. В процессе редактирования можно изменять настройки процедур анализа, используемые переменные и их спецификации, файлы данных, добавлять элементы пользовательского интерфейса и т.д.

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

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 1. Диалог Macros


SVB макросы могут создаваться на основе уже готовых программ на VISUAL BASIC, написанных в других приложениях (например, MICROSOFT EXCEL), путем добавления встроенных процедур и функций STATISTICA.[scaner 497-498]

В STATISTICA предусмотрено три категории макросов, которые могут быть автоматически написаны. Для активации этих макросов в меню Tools на панели инструментов выделите команду Macro (рис.2). [scaner c. 498]


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 2. Редактор макросов VISUAL BASIC


Analysis/Graph Macro (макрос анализа/графика) - макросы, создаваемые для конкретных типов анализа из меню Statistics и Graphs. В макрос записываются все настройки, параметры, присущие данному типу анализа, а также переменные, над которыми он проводится. После выбора модуля или процедуры из указанных меню в фоновом режиме осуществляется запись всех выполняемых действий: выбор переменных, изменение параметров и др. В любой момент можно перенести записанную информацию (код макроса VISUAL BASIC) в окно редактора макросов VISUAL BASIC (см. рис. 1).

Log of Analyses (Master Macro) (мастер-макрос (журнал)) - макросы, содержащие любую последовательность модулей из меню Statistics или Graphs. В мастер-макрос записывается последовательность проведенных анализов с указанными для них параметрами и переменными от момента включения записи макроса до ее отключения. Такая запись объединяет различные модули, выбранные в меню Statistics или Graphs. В отличие от простого Analysis Macro, запись Master Macros может быть приостановлена и возобновлена. Запись мастера-макроса начинается при нажатии кнопки записи и приостанавливается нажатием кнопки останова. Все действия, совершенные между этими событиями, записываются в соответствующей последовательности: выбор файлов данных, операции преобразования переменных, выбор элементов и др.

Key board Macro (клавиатурный макрос) - макросы, содержащие последовательности нажатия клавиш во время проведения анализа. При остановке записи в окне редактора SVB откроется простая программа, содержащая одну команду SendKeys с символами, которые соответствуют клавишам, нажатым при проведении анализа. Данный тип макроса довольно прост - он не записывает контекст, в котором происходило нажатие клавиш (т.е. команды, которые при этом выбирались), но данное свойство может быть полезно для решения определенных задач.

Все три категории макросов имеют одинаковый синтаксис и могут быть впоследствии модифицированы. [scaner c.499]

Среда разработки STATISTICA Visual Basic (см. рис. 2) содержит гибкий редактор программ и мощные средства отладки.

Отладка макросов. Среда разработки SVB позволяет устанавливать в программе точки останова, если необходимо приостановить работу макроса на какой-либо строке и проверить значение переменных в этой точке программы. Предусмотрена возможность выполнения макроса по шагам.

Диспетчер объектов. Объекты в SVB организованы в виде иерархического дерева объектов, и этот список можно найти в окне Object Browser - Просмотр объектов (рис. 3).


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис.3. Окно Object Browser - Просмотр объектов.


Мастер функций. Существует множество функций STATISTICA и как правило, они доступны только в SVB. Это расширение языка программирования Visual Basic, например, вероятностные, матричные функции, простые окна диалогов пользователя и т.д.

Редактор диалогов пользователя. Среда программирования SVB содержит все необходимые средства для создания пользовательского интерфейса. Мощные средства User-Dialog Editor - Редактора диалогов позволяют проектировать диалоговые окна, используя мышь. В отличие от Microsoft Visual Basic, созданные пользователем диалоги хранятся вместе с программным кодом как данные типа UserDialog. Такой метод создания диалоговых окон позволяет реализовывать сложные элементы интерфейса, которые легко редактируются в текстовом режиме; кроме того, определяя диалог, как переменную, к нему легко можно обращаться в любом месте программы.


2. ПРЕДПОСЫЛКИ МЕТОДА НАИМЕНЬШИХ КВАДРАТОВ И ИХ РЕАЛИЗАЦИЯ В STATISTICA


2.1 Модель множественной линейной регрессии


В экономической практике часто имеет место сложная, многопричинная статистическая связь между признаками.

Множественная регрессия представляет собой регрессию результативного признака с двумя и большим числом факторов, т.е. модель вида:


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии[Елисеева-34]


Переменная Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии называется зависимой переменной, в то время как переменные Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии называются независимыми переменными.[Afifi-164]

Задача оценки статистической взаимосвязи переменных Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии и Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессииформулируется аналогично случаю парной регрессии. Записывается функция Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, где b- вектор параметров, Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии -случайная ошибка. Предполагается, что эта функция связывает переменную Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии с вектором независимых переменных Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии для данной генеральной совокупности. Предполагается, что ошибки Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессииявляются случайными величинами с нулевым математическим ожиданием и постоянной дисперсией; Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессиии Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии статистически независимы при Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии. Кроме того, для проверки статистической значимости оценок b обычно предполагается, что ошибки Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии нормально распределены.

Для оценивания параметров Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии применяется, как правило, метод наименьших квадратов. Уравнение регрессии с оцененными параметрами имеет вид


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии.[Салманов-44]


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


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии


где Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии-фактическое значение результативного признака;

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии-теоретическое значение результативного признака, найденное исходя из соответствующей математической функции связи Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессиии Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, т. е. из уравнения регрессии;

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - случайная величина, характеризующая отклонения реального значения результативного признака от теоретического, найденного по уравнению регрессии. . [Елисеева-35]

Общий смысл оценивания по методу наименьших квадратов заключается в минимизации суммы квадратов отклонений наблюдаемых значений зависимой переменной (Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии) от значений, предсказанных моделью(Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии).


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


где S- суммы квадратов отклонений

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии-остаток в наблюдении j.[net]

Построение уравнения множественной регрессии начинается с решения вопроса о спецификации модели. Она включает в себя два круга вопросов: отбор факторов и выбор вида уравнения регрессии. [Елисеева-91]

Факторы, включаемые во множественную регрессию, должны отвечать следующим требованиям.

1. Они должны быть количественно измеримы. [Елисеева-92] Для исследования влияния качественных признаков в модель можно вводить бинарные (фиктивные) переменные, которые, как правило, принимают значение 1, если данный качественный признак присутствует в наблюдении, и значение 0 при его отсутствии.[Магнус 100]

2. Факторы не должны быть интеркоррелированы и тем более находиться в точной функциональной связи.

Если между факторами существует высокая корреляция, то нельзя определить их изолированное влияние на результативный показатель и параметры уравнения регрессии оказываются неинтерпретируемыми. [Елисеева-92]

Коэффициенты интеркорреляции (т. е. корреляции между объясняющими переменными) позволяют исключать из модели дублирующие факторы. Считается, что две переменных явно коллинеарны, т. е. находятся между собой в линейной зависимости, если Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии.

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

Выделим некоторые наиболее характерные признаки мультиколлинеарности.

Небольшое изменение исходных данных (например, добавление новых наблюдений) приводит к существенному изменению оценок коэффициентов модели.

Оценки имеют большие стандартные ошибки, малую значимость, в то время как модель в целом является значимой (высокое значение коэффициента детерминации R2 и соответствующей F-статистики).

Оценки коэффициентов имеют неправильные с точки зрения теории знаки или неоправданно большие значения.[Магнус 94]

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

метод исключения;

метод включения;

шаговый регрессионный анализ.

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

Как и в парной зависимости, возможны разные виды уравнений множественной регрессии: линейные и нелинейные. [Елисеева-100] Линейные модели регрессии могут быть описаны как линейные в двух отношениях: как линейные по переменным и как линейные по параметрам. Для линейного регрессионного анализа требуется линейность только по параметрам (Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии), поскольку нелинейность по переменным (Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии) может быть устранена с помощью изменения определений.[Доугерти 141]

В линейной множественной регрессии параметры при х называются коэффициентами регрессии (Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии). Они характеризуют среднее изменение результата (Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии) с изменением соответствующего фактора (Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии) на единицу при неизмененном значении других факторов, закрепленных на среднем уровне. [Елисеева-100]

Оценка значимости коэффициентов чистой регрессии может быть проведена по t-критерию Стьюдента. В этом случае, как и в парной регрессии, для каждого фактора используется формула:


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии


где Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - коэффициент чистой регрессии при факторе хi;

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии- средняя квадратическая ошибка коэффициента регрессии Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии.

Для уравнения множественной регрессии Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

средняя квадратическая ошибка коэффициента регрессии Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии может быть определена по следующей формуле:


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии


где Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - среднее квадратическое отклонение для признака у;

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - среднее квадратическое отклонение для признака Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии;

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - коэффициент детерминации для уравнения множественной регрессии;

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - коэффициент детерминации для зависимости фактора Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии со всеми другими факторами уравнения множественной регрессии;

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии- число степеней свободы для остаточной суммы квадратов отклонений. [Елисеева-136-137]

Критический уровень t при любом уровне значимости зависит от числа степеней свободы, которое равно Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии: число наблюдений минус число оцененных параметров. [Доугерти 154]

Практическая значимость уравнения множественной регрессии оценивается с помощью показателя множественной корреляции (Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии) и его квадрата – коэффициента детерминации (Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии). [Елисеева-112]

Показатель множественной корреляции может быть найден как индекс множественной корреляции:


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии


где Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - общая дисперсия результативного признака;

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - остаточная дисперсия для уравнения Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Границы изменения индекса множественной корреляции: от 0 до 1. Чем ближе его значение к 1, тем теснее связь результативного признака со всем набором исследуемых факторов. [Елисеева-113]

Коэффициент детерминации Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии определяет долю дисперсии Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, объясненную регрессией. [Доугерти 159]

Значимость уравнения множественной регрессии в целом оценивается с помощью F-критерия Фишера:


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

где Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - факторная сумма квадратов на одну степень свободы;

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - остаточная сумма квадратов на одну степень свободы;

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии- коэффициент (индекс) множественной детерминации;

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии- число параметров при переменных Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии (в линейной регрессии совпадает с числом включенных в модель факторов);

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии- число наблюдений. [Елисеева-129]

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


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии


Величина F имеет распределение Фишера с степенями свободы Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии. Распределение Фишера - двухпараметрическое распределение неотрицательной случайной величины, являющейся в частном случае при m = 1 квадратом случайной величины, распределенной по Стьюденту. [Салманов 48]. В определенном смысле этот тест дополняет t-тесты, которые используются для проверки значимости вклада отдельных случайных переменных, когда проверяется каждая из гипотез Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии.. [Доугерти 160]

Для проверки нулевой гипотезы при заданном уровне значимости по таблицам находится критическое значение Fкрит, и нулевая гипотеза отвергается, если Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии.

Распределение Фишера может быть использовано не только для проверки гипотезы об одновременном равенстве нулю всех коэффициентов линейной регрессии, но и гипотезы о равенстве нулю части этих коэффициентов. Это особенно важно при развитии линейной регрессионной модели, так как позволяет оценить обоснованность исключения отдельных переменных или их групп из числа объясняющих переменных или, наоборот, включения их в это число. [Салманов 48].


2.2 Требования к остаткам


При оценке параметров уравнения регрессии применяется метод наименьших квадратов (МНК). При этом делаются определенные предпосылки относительно случайной составляющей Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии. В модели


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии


случайная составляющая Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии представляет собой ненаблюдаемую величину. В задачу регрессионного анализа входит не только построение самой модели, но и исследование случайных отклонений Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, т. е. остаточных величин.

Проверка статистической достоверности коэффициентов регрессии и корреляции осуществляется с помощью t-критерия Стьюдента, F-критерия Фишера и Z-преобразования (для коэффициентов корреляции). При использовании этих критериев делаются предположения относительно поведения остатков Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - остатки представляют собой независимые случайные величины и их среднее значение равно 0; они имеют одинаковую (постоянную) дисперсию и подчиняются нормальному распределению.

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

Исследования остатков Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии предполагают проверку наличия следующих пяти предпосылок МНК:

случайный характер остатков;

нулевая средняя величина остатков, не зависящая от Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии;

гомоскедастичность - дисперсия каждого отклонения Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии одинакова для всех значений х;

отсутствие автокорреляции остатков. Значения остатков Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии распределены независимо друг от друга;

остатки подчиняются нормальному распределению.

Если распределение случайных остатков Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии не соответствует некоторым предпосылкам МНК, то следует корректировать модель.

Прежде всего проверяется случайный xapактер остатков Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии - первая предпосылка МНК.

С этой целью стоится график зависимости остатков Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии от теоретических значений результативного признака (рис. 3.2).


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис.3.2. Зависимость случайных остатков Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии от теоретических значений Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии


Если на графике получена горизонтальная полоса, то остатки Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии представляют собой случайные величины и MНK оправдан, теоретические значения Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии хорошо аппроксимирует фактические значения у.

Возможны следующие случаи: если Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии зависит от Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, то:

остатки Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии не случайны;

остатки Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии не имеют постоянной дисперсии;

остатки Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии носят систематический характер.

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

Вторая предпосылка МНК относительно нулевой средней величины остатков означает, чтоСоздание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии. Это выполнимо для линейных моделей и моделей, нелинейных относительно включаемых переменных.

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


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 3.4. Зависимость случайных остатков от величины фактора Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии


Если остатки на графике расположены в виде горизонтальной полосы (рис. 3.4), то они независимы от значений Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии. Если же график показывает наличие зависимости Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии и Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, то модель неадекватна.

Предпосылка о нормальном распределении остатков позволяет проводить проверку параметров регрессии и корреляции с помощью критериев t, F.[1] Всегда, прежде чем сделать окончательные выводы, стоит рассмотреть распределения представляющих интерес переменных. Можно построить гистограммы или нормальные вероятностные графики остатков для визуального анализа их распределения.[электрон-уч]

В соответствии с третьей предпосылкой МНК требуется, чтобы дисперсия остатков была гомоскедастичной. Это значит, что для каждого значения фактора Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии остатки Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии имеют одинаковую дисперсию. Если это условие применения МНК не соблюдается, то имеет место гетероскедастичность. Наличие гетероскедастичности можно наглядно видеть из поля корреляции (рис. 3.5).


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 3.5. Пример гетероскедастичности: дисперсия остатков растет по мере увеличения х;


Используя трехмерное изображение, получим следующие графики, иллюстрирующие гомо- и гетероскедастичность (рис. 3.6, 3.7).

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 3.6. Гомоскедастичность остатков


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 3.7. Гетероскедастичность остатков


Рис. 3.6 показывает, что для каждого значения Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии распределения остатков Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии одинаковы в отличие от рис. 3.7, где диапазон варьирования остатков меняется с переходом от одного значения Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии другому. Соответственно на рис. 3.7 демонстрируется неодинаковая дисперсия при разных значениях Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии.

Наличие гомоскедастичности или гетероскедастичности можно видеть и по рассмотренному выше графику зависимости остатков Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии от теоретических значений результативного признака Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии. Так, для рис 3.5 зависимость остатков от Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии представлена на рис. 3.8.

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 3.8. Гетероскедастичность: большая дисперсия Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии для больших значений Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии


При построении рефессионных моделей чрезвычайно важно соблюдение четвертой предпосылки МНК - отсутствие автокорреляции остатков, т. е. значения остатков Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, распределены независимо друг от друга. Автокорреляция остатков означает наличие корреляции между остатками текущих и предыдущих (последующих) наблюдений. [1]

Одним из основных предполагаемых свойств отклонений Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии от регрессионной модели является их статистическая независимость между собой. Поскольку значени Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии остаются неизвестными, то проверяется статистическая независимость их аналогов — отклонения Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии (наблюдаемые значения ошибок). При этом устанавливается некоррелированность сдвинутыми на период величинами Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии. Для этих величин можно рассчитать коэффициент автокорреляции первого порядка (выборочный коэффициент корреляции между Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии и Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии):


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии


На практике в качестве теста используют тесно связанную с коэффициентом автокорреляции Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии статистику Дарбина — Уотсона. Тест Дарбина — Уотсона (DW) на наличие или отсутствие автокорреляции ошибок рассчитывается по формуле:


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии


Нулевая гипотеза состоит в отсутствии автокорреляции. Статистику Дарбина-Уотсона можно выразить через коэффициент автокорреляции:


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии [2]


Содержательный смысл статистики Дарбина-Уотсона заключается в следующем: если между Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии и Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии имеется достаточно высокая положительная корреляция, то Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии и Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии близки друг другу и величина статистики DW мала. Это согласуется с последним выражением: если коэффициент Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии близок к единице, то величина DW близка к нулю. Отсутствие корреляции означает, что DW близка к 2. [3]

Если бы распределение статистики DW было известно, то для проверки гипотезы Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии против альтернативы Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессииможно было бы для заданного уровня значимости (например, для 5%-уровня) найти такое критическое значение Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, что еслиСоздание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, то гипотеза Но не отвергается, в противном случае она отвергается в пользу Н1. Проблема, однако, состоит в том, что распределение DW зависит не только от числа наблюдений п и количества регрессоров к, но и от всей матрицы X, и, значит, практическое применение этой процедуры невозможно. Тем не менее, Дарбин и Уотсон доказали, что существуют две границы, обычно обозначаемые Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии и Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии (и = upper - верхняя, l = low - нижняя), которые зависят лишь от n, к и уровня значимости (а следовательно, могут быть затабулированы) и обладают следующим свойством: еслиСоздание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, то Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии и, значит, гипотеза H0 не отвергается, а если Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии тоСоздание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, и гипотеза Но отвергается в пользу H1. В случае Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессииситуация неопределенна, т. е. нельзя высказаться в пользу той или иной гипотезы. Если альтернативной является гипотеза об отрицательной корреляцииСоздание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии, то соответствующими верхними и нижними границами будут 4-dl и 4-du. Целесообразно представить эти результаты в виде следующей таблицы.


Таблица 6.3.

Значение статистики DW

Значение статистики DW Вывод
4 -dl< DW < 4 Гипотеза Но отвергается, есть отрицательная корреляция
4 - du < DW < 4 - dl Неопределенность
du < DW < 4 - du Гипотеза Но не отвергается
dl < DW < du Неопределенность
0 < DW < dl Гипотеза Но отвергается, есть положительная корреляция

Наличие зоны неопределенности, представляет определенные трудности при использовании теста Дарбина-Уотсона. [3]

Отсутствие автокорреляции остаточных величин обеспечивает состоятельность и эффективность оценок коэффициентов регрессии.

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


2.3 Проверка гипотезы о нормальности остатков в модуле Multiple Regression Statistica


STATISTICA является интегрированной системой комплексного статистического анализа и обработки данных в среде Windows. Все методы обработки в системе разбиты на несколько групп - модулей - в соответствии с основными разделами статистического анализа. Модуль Multiple Regression -Множественная регрессия включает в себя набор средств множественной линейной и фиксированной нелинейной (в частности, полиномиальной, экспоненциальной, логарифмической и др.) регрессии, включая пошаговые, иерархические и другие методы. Система STATISTICA позволяет вычислить всесторонний набор статистик и расширенной диагностики, включая полную регрессионную таблицу, частные и частичные корреляции и ковариации для регрессионных весов, статистику Дарбина-Уотсона и многие другие. Анализ остатков и выбросов может быть проведен при помощи широкого набора графиков. [Салманов, с. 245-246]

Модуль Multiple Regression запускается из меню Statistics. Нажмите кнопку Variable на Multiple Linear Regression - Quick tab (Множественная линейная регрессия - Быстрая вкладка) (рис. 1) и выберите зависимую переменную (Dependent variable) и несколько независимых переменных (Independent variable) и затем нажмите кнопку ОК. Появится Multiple Regression Results - диалог результатов регрессионного анализа (рис. 2). [Салманов, с. 249]

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 1. Стартовая панель модуля Multiple Regression


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 2. Окно результатов регрессионного анализа


Окно результатов анализа (Multiple Regression Results) (рис. 2) имеет следующую структуру: верх окна - информационный. Он состоит из двух частей: в первой части содержится основная информация о результатах оценивания, во второй высвечиваются значимые регрессионные коэффициенты (significant beta's are highlighted). Внизу окна расположены три вкладки: Quick-быстрый, Advanced-продвинутый и Residuals/assumptions/ prediction, на которых находятся функциональные кнопки, позволяющие всесторонне просмотреть результаты анализа.[боровиков 136] Критерий для определения уровня статистической значимости может быть изменен в поле Alpha (значение по умолчанию 0,05) .[Салманов, с. 254]

Рассмотрим информационную часть окна. В ней содержатся краткие сведения о результатах анализа, а именно:

Dependent - имя зависимой переменной

No. of сases - число случаев, по которым построена регрессия

Multiple R - коэффициент множественной корреляции

• R2 - коэффициент детерминации (квадрат коэффициента множественной корреляции)

• adjusted R2 - скорректированный коэффициент детерминации

Standard error of estimate - стандартная ошибка оценки

Intercept - оценка свободного члена регрессии, значение коэффициента В0 в уравнении регрессии.

Std. Error - стандартная ошибка оценки свободного члена,
стандартная ошибка коэффициента В0 в уравнении регрессии.

t(df) and p-value - значение t-критерия и уровень р. t-критерий используется для проверки гипотезы о равенстве 0 свободного члена регрессии.

F - значения F-критерия.

df - число степеней свободы F-критерия.

р - уровень значимости. [боровиков 136-138]

Нажмите на Summary: Regression results на вкладке Quick tab, чтобы отобразить электронную таблицу с бета-коэффициентами (рис. 3).


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 3. Таблица коэффициентов уравнения регрессии и оценок их достоверности


Эта электронная таблица показывает стандартизированные бета-коэффициенты регрессии (Beta) и необработанные коэффициенты регрессии (В). Величина этих коэффициентов позволяет сравнивать относительный вклад каждой независимой переменной в предсказании зависимой переменной. Приводится также t-статистика и соответствующее значение вероятности (р) для проверки гипотезы о достоверности этих коэффициентов. [Салманов, с. 254-255]

После того как доказана адекватность модели, полученные результаты можно уверенно использовать для дальнейших действий. Анализ адекватности основывается на анализе остатков. [боровиков 139] Для анализа остатков на вкладке Multiple Regression Results - Residuals/assumptions/prediction tab нажмите кнопку диалога Residual Analysis (рис. 4). [Салманов, с. 256] Здесь имеется возможность рассчитать статистику Дарбина-Уотсона, удаленные остатки, доверительные интервалы для предсказанных значений и многие другие статистики. Широкие возможности анализа остатков и выбросов включают многочисленные типы графиков, диаграмм рассеяния, гистограмм, графики на нормальной и полунормальной вероятностной бумаге и др.[exponenta.ru]


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 4. Окно анализа остатков


Однако можно также применять все аналитические средства STATISTICA, чтобы далее исследовать остатки, создав автономную входную электронную таблицу остатков. [Салманов, с. 261]

3. СОЗДАНИЕ МАКРОСА ДЛЯ ПРОВЕРКИ ГИПОТЕЗЫ О НОРМАЛЬНОСТИ ОСТАТКОВ


3.1 Описание макроса


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

В данной курсовой работе осуществлялось эконометрическое моделирование вторичного рынка жилья в г. Минске с использованием статистического пакета Statistica 6.0., обладающего широкими возможностями для построения регрессионных моделей. Пакет Statistica 6.0. содержит встроенный язык программирования VBA, позволяющий создавать дополнительные модули для статистического анализа.

В ходе выполнения множественного регрессионного анализа в модуле Multiple Regression исследование остатков на нормальность можно осуществить лишь графическими методами с использованием нормальных графиков вероятности, доступных из диалога Residual Analysis. Однако на основании графической информации можно сделать лишь предположение о виде распределения остатков. Для проверки остатков на соответствие их нормальному распределению необходимо создать автономную входную электронную таблицу остатков, а затем вызвать модуль Distribution Fitting (Подбор распределения). Нажав кнопку Graph, мы получим результаты применения критерия хи-квадрат, а также гистограмму с проведенной на ней предполагаемой нормальной кривой, на основании которых можно сделать вывод о виде распределения остатков.

Таким образом, при осуществлении множественного регрессионного анализа в пакете Statistica 6.0. необходимо использовать 2 отдельных модуля (Multiple Regression и Distribution Fitting), создавая при этом дополнительную входную электронную таблицу остатков, что требует значительных затрат времени.

Для решения всех вышеперечисленных проблем на языке VBA было написано 2 модуля. Первый модуль (CREATE_MACROS) создает пользовательскую панель инструментов (Приложение Б), а второй (regres-normal) - автоматизирует процесс проверки гипотезы о нормальности остатков регрессии (Приложение А).

После запуска программы CREATE_MACROS, новая панель инструментов CUSTOM будет добавлена к существующей инсталляционной версии STATISTICA. Созданная панель инструментов состоит из 1 главного элемента - кнопки «Нормальность остатков». Чтобы удалить новый элемент панели инструментов, выберите Настройка (Customize) из меню Сервис (Tools) для отображения диалога Настройка (Customize). На вкладке Панели инструментов (Toolbars tab), подсветите новый элемент и Удалите (Delete) его (рис. 1.1).


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 1.1. Удаление пользовательской панели инструментов

Для запуска модуля regres-normal необходимо нажать кнопку “Нормальность остатков” на панели инструментов (рис. 1), после чего появится диалог Multiple Regression.Residual Analysis (рис. 2). Критерий для определения уровня статистической значимости может быть изменен в поле Alpha (значение по умолчанию 0,05). При нажатии кнопки Variables отобразится диалог Select dependent and independent variable lists (рис. 3) для выбора зависимой и списка независимых переменных. После нажатия кнопки OK на экране появятся результаты выполнения программы (рис.4).


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 1. Кнопка “Нормальностьостатков” для запуска модуля


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 2. Стартовая панель модуля


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 3. Окно выбора переменных для анализа

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис.4. Результаты выполнения программы


Программа вычисляет следующий набор статистик:

Таблицы результатов оценивания регрессионной модели. Они содержат значения коэффициентов модели (В), бета-коэффициенты (Beta), их стандартные ошибки, значения критерия Стьюдента для проверки гипотезы о достоверности этих коэффициентов (Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии и Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии), коэффициенты корреляции R и детерминации R2, значение критерия Фишера (F, p) для проверки гипотезы о достоверности R и другое.

Таблицу результатов анализа остатков, содержащую наблюдаемые (Observed Value) и предсказанные по модели (Predicted Value) значения зависимой переменной, остатки (Residual) и другое.

Статистику Дарбина-Уотсона.

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

Таблицу эмпирических и теоретических частот.

Оба модуля написаны на языке STATISTICA VISUAL BASIC. Рассмотрим схему работы программы regres-normal (рис. 5).

Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 5. Схема работы программы regres-normal


Весь блок программного кода в совокупности представляет собой модуль. Модуль regres-normal состоит из ряда операторов, организованных в шесть разделов: это раздел объявлений, начинающийся оператором Option Base 1, процедура Main, функция InputDialog, функция UI, процедуры MultipleRegression и NormalDistribution.

Переменные, содержащиеся в разделе объявлений, представляют собой глобальные переменные (Приложение В, табл. 1). Выполнение программы начинается с процедуры MAIN (рис. 5). Данная процедура вызывает функцию InputDialog, которую в свою очередь обслуживает функция UI. Функция InputDialog отображает пользовательский диалог "Multiple Regression. Residual Analysis", переменные Alpha и AlphaValue инициализируются значениями, содержащимися в соответствующих элементах управления типа TextBox. Функция UI отображает диалог выбора переменных для анализа ("Select dependent and independent variable lists:"). Здесь происходит инициализация списков зависимых и независимых переменных (VarList1(),VarList2()), а также переменных типа Long, хранящих количество элементов в этих списках (InList1, InList2). В случае отсутствия ошибок при вызове пользовательских диалогов далее в процедуре Main происходит последовательный вызов процедур MultipleRegression и NormalDistribution.

В процедуре MultipleRegression осуществляется регрессионный анализ с использованием данных из текущей таблицы (S1), а также происходит инициализация вновь созданной таблицы остатков (NewSpreadsheet). В процедуре NormalDistribution осуществляется проверка остатков из таблицы NewSpreadsheet на нормальное распределение.


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


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

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


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


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

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

Остатки распределены нормально: Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии при Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии.


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

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


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


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

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


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

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


Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии

Рис. 3 График зависимости остатков εi от теоретических значений результативного признака Создание макроса на языке Statistica Visual Basic для проверки гипотезы о нормальности остатков регрессии.


Из рисунка 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
Рефетека ру refoteka@gmail.com