|
02.12.2012, 12:31 | #1 | ||
Platinum Member
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,304
|
GRETL: Вопросы и ответы.
Поскольку большинству присутствующих на форуме не нужен весь функционал, который даёт R, а также работа в консоли приятна не всем: народ хочет кляцкать мышой, рассмотрим другой бесплатный пакет -- GRETL = GNU Regression, Econometrics and Time-series Library (Библиотека для регрессий, эконометрики и временных рядов). Рассмотрим кратко задачу с множественной линейной регрессией. Данные перегнаны из R в Excel. Файл Excel импортирован и сохранен в формате gretl (см. вложение). Загружаем этот файл и видим вот такое окно. Дальше строим 3D график. График выглядит так. Его можно вращать с помощью мыши. Вот тут меня спрашивали, Хогфазер, атэц, что же ты Ыкс то выкинул. На картинке, надеюсь, видно, что Ыкс у нас не при делах. Опускаем всю лирику, которая была в предыдущей статье. Алгоритм от инструмента не зависит. Эту задачу и в Excel решить можно, просто мене удобно. Создаем новую переменную. Дальше в меню "Модель" выбираем "Метод наименьших квадратов..." Заполняем формочку. Получаем результат Устраняем лишнее (в модели: меню Правка - Изменить модель) и приходим к той же модели, что была рассмотрена в заметке по R. Код:
Модель 2: МНК, использованы наблюдения 1-22 Зависимая переменная: lnZ Коэффициент Ст. ошибка t-статистика P-значение ---------------------------------------------------------------- y 0.00266438 9.69920e-05 27.47 6.07e-018 *** Среднее зав. перемен 2.508130 Ст. откл. зав. перемен 1.295627 Сумма кв. остатков 4.701594 Ст. ошибка модели 0.473165 R-квадрат 0.972924 Испр. R-квадрат 0.972924 F(1, 21) 754.6082 Р-значение (F) 6.07e-18 Лог. правдоподобие -14.24210 Крит. Акаике 30.48420 Крит. Шварца 31.57524 Крит. Хеннана-Куинна 30.74121 Логарифмическое правдоподобие для z = -69.421 Код:
Тест на нормальное распределение ошибок - Нулевая гипотеза: ошибки распределены по нормальному закону Тестовая статистика: Хи-квадрат(2) = 0.737064 р-значение = 0.691749 Sapienti Sat. |
||
---------
DNF is not an option
|
|||
Реклама | |
|
02.12.2012, 22:32 | #2 |
Platinum Member
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,304
|
GRETL и R
Вот тут наши корреспонденты интересуются, мол зачем тогда R, если все так чудесно в GRETL. Действительно, работа с регрессией и временными рядами там выше всяческих похвал. Более того, своим студентам я рекомендовал на флешке держать portable версию gretl, чтобы в любой аудитории можно было продолжить начатое. Но, при всех его удобствах, GRETL заточен на решение специфических задач. Если нам нужен серьезный анализ, то в R это сделать проще и быстрее.
К счастью, есть возможность работать с R прямо из GRETL, для этого в меню "Инструменты" выбираем "Запустить R". В сеансе R мы увидим строчку. Код:
current data loaded as data frame "gretldata" > Вот Вам, пожалуйста, первые строки нашей таблицы Код:
> head(gretldata) x y z lnZ 1 75 375 1.452 0.3729419 2 75 625 3.705 1.3096833 3 75 1000 18.857 2.9368842 4 75 1500 50.434 3.9206656 5 100 500 1.956 0.6709016 6 125 375 2.272 0.8206605 > Другой вариант, работать со скриптами R, которые можно создать из меню Файл-Скрипты-Новый скрипт-Скрипт для R Пишем скрипт Код:
library(car) fit<-lm(lnZ~-1+y,data=gretldata) summary(fit) qqPlot(fit) Нажимаем "шестереночки", которые означают выполнить. Выбираем интерактивный режим. Получаем в R Код:
R version 2.15.2 (2012-10-26) -- "Trick or Treat" Copyright (C) 2012 The R Foundation for Statistical Computing ISBN 3-900051-07-0 Platform: i386-w64-mingw32/i386 (32-bit) R -- это свободное ПО, и оно поставляется безо всяких гарантий. Вы вольны распространять его при соблюдении некоторых условий. Введите 'license()' для получения более подробной информации. R -- это проект, в котором сотрудничает множество разработчиков. Введите 'contributors()' для получения дополнительной информации и 'citation()' для ознакомления с правилами упоминания R и его пакетов в публикациях. Введите 'demo()' для запуска демонстрационных программ, 'help()' -- для получения справки, 'help.start()' -- для доступа к справке через браузер. Введите 'q()', чтобы выйти из R. current data loaded as data frame "gretldata" Загрузка требуемого пакета: graphics Загрузка требуемого пакета: MASS Загрузка требуемого пакета: grDevices Загрузка требуемого пакета: nnet Call: lm(formula = lnZ ~ -1 + y, data = gretldata) Residuals: Min 1Q Median 3Q Max -0.78397 -0.35742 -0.05766 0.18365 0.91500 Coefficients: Estimate Std. Error t value Pr(>|t|) y 2.664e-03 9.699e-05 27.47 <2e-16 *** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.4732 on 21 degrees of freedom Multiple R-squared: 0.9729, Adjusted R-squared: 0.9716 F-statistic: 754.6 on 1 and 21 DF, p-value: < 2.2e-16 > Вот в таком вот акцепте... |
---------
DNF is not an option
|
|
09.12.2012, 15:58 | #3 |
Newbie
Регистрация: 08.02.2011
Адрес: Санкт-Петербург
Сообщений: 5
|
Hogfather, Добрый день.
Есть ли у Вас руководство пользователя GRETL на русском языке? И если есть, сможете ли Вы прислать его по адресу nikanorv@mail.ru Заранее благодарен и с уважением Никоноров Валентин |
10.12.2012, 22:58 | #4 | |||||||||||||||||||||||||||||
Platinum Member
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,304
|
Как такового руководства на русском я не видел. Единственное, что могу порекомендовать:
Тадеуш Куфель Эконометрика. Решение задач с применением пакета программ GRETL Издательство: Горячая Линия - Телеком ISBN 5-93517-307-7, 83-0114284-7; 2007 г. 200 стр. Добавлено через 14 часов 22 минуты Цитата:
1. Gretl умеет читать файлы Excel, включая последние версии. Данные должны быть в виде таблицы на отдельном листе, заголовки начинаются с ячейки A1 и идут по этой строке, данные -- с ячейки A2. Для того, чтобы прочитать такие данные, выбираем меню Файл-Открыть-Импорт-Excel 2. Текстовые/CSV файлы. Меню Файл-Открыть-Импорт-CSV, далее выбираем разделитель записей. При настроенной русской локализации Windows -- это, обычно, точка с запятой (;). 3. Прочее, включая OpenOffice (см. картинку) Данные можно сохранять в формате Gretl (Файл-Сохранить и Файл-Сохранить как...), а также экспортировать (Файл-Экспорт) все или часть данных в формат CSV, gretl, GNU R и несколько других. Таким образом, обмен данными между программами может выглядеть так:
Последний раз редактировалось Hogfather; 11.12.2012 в 14:19. |
|||||||||||||||||||||||||||||
---------
DNF is not an option
|
||||||||||||||||||||||||||||||
12.12.2012, 08:51 | #5 | |
Platinum Member
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,304
|
Письма наших читателей
Вот тут нам пишут.
Цитата:
Немного старческого брюзжания
Мой научный руководитель в таких случаях всегда рассказывал байку про то, как зайца учат на барабане играть. Сунут ему в лапки ватку со спиртом и поджигают, заяц начинает лапками стучать, если барабан подставят, то, вроде как, и играет. А потом зайцу достаточно только коробок со спичками показать, как он, бедолага, от испуга тут же лапками стучать начинает. К чему это я. Мне казалось, что я эту тему уже разобрал, но, похоже, неубедительно. Попробуем еще раз. Так вот, такая сумма не получается. Еще раз подробно. Имеем модель вида . Вспоминаем школьный курс, и приводим формулу вот к такому виду Дальше разберемся с коэффициентами. Я уже писал про свободный член, но, раз девушкам это нравится, повторюсь. В данном случае const в Gretl эквивалентен (Intercept) в GNU R. Т.е. это наша нулевая бета. Исходя из этого получаем уравнение z~e^(0,00242277x + 0,00346567y-0,796453) Ну, еще неплохо провести тест остатков модели. Также можно проверить, как изменится модель, если туда добавить x*y (по критерию Акаике (AIC)), и, в первом приближении, что-то получилось.. P.S. Не знаю как у вас в ВУЗе, у нас, за лишнюю "точность", т.е. знаки после запятой, могут и канделябром по шее двинуть... P.P.S. Про ε~N(0,σ2) в пароксизмах радости не забываем. Последний раз редактировалось Hogfather; 12.12.2012 в 10:08. |
|
---------
DNF is not an option
|
||
22.12.2012, 22:56 | #6 | |
Platinum Member
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,304
|
GRETL регрессионный анализ. Метод наименьших квадратов (МНК). Ответы на вопросы.
Получил тут письмо и призадумался.
Цитата:
Начнем с азов. 1. Пусть у нас есть некие переменные A, B и C и есть зависимая Y, Вариант номер раз. Самый простой. Зависимая переменная у нас Y, Независимые: const, A, B, C . Что-то получили, радуемся. Провели тест на нелинейность или Рамсея (прямо в модели, меню "Тесты"), чувствуем, чего-то нехватает. Код:
Модель 3: МНК, использованы наблюдения 1-28 Зависимая переменная: Y Коэффициент Ст. ошибка t-статистика P-значение --------------------------------------------------------------- const 51.3073 114.623 0.4476 0.6584 A -136.708 30.7476 -4.446 0.0002 *** B 138.750 17.9676 7.722 5.87e-08 *** C 267.893 15.9484 16.80 9.01e-015 *** Среднее зав. перемен 746.4821 Ст. откл. зав. перемен 1026.452 Сумма кв. остатков 844716.8 Ст. ошибка модели 187.6074 R-квадрат 0.970306 Испр. R-квадрат 0.966594 F(3, 24) 261.4137 Р-значение (F) 1.87e-18 Лог. правдоподобие -184.1340 Крит. Акаике 376.2680 Крит. Шварца 381.5968 Крит. Хеннана-Куинна 377.8971 Тест на нелинейность (квадраты) - Нулевая гипотеза: зависимость линейна Тестовая статистика: LM = 27.9766 р-значение = P(Хи-квадрат(3) > 27.9766) = 3.67338e-006 Тест на нелинейность (логарифмы) - Нулевая гипотеза: зависимость линейна Тестовая статистика: LM = 18.6274 р-значение = P(Хи-квадрат(3) > 18.6274) = 0.000326435 Меню "Добавить"-"Новую переменную". В появившемся окне пишем A2=A^2 Нажимаем ОК. Мы таким образом добавили квадрат A и назвали его A2 Аналогично создаем еще 6 переменных. Для произведения пишем: AB=A*B и т.д. Вот что у нас получится. Все их ставим в независимые переменные. Получаем. Код:
Модель 4: МНК, использованы наблюдения 1-28 Зависимая переменная: Y Коэффициент Ст. ошибка t-статистика P-значение --------------------------------------------------------------- const -4.54555e-09 1.67265e-09 -2.718 0.0146 ** A 1.00000 9.10744e-010 1.098e+09 1.12e-144 *** B 8.82849e-09 2.67155e-09 3.305 0.0042 *** C 1.00000 1.18757e-08 8.421e+07 1.02e-125 *** A2 8.52545e-012 1.14165e-010 0.07468 0.9413 B2 5.00000 9.76096e-010 5.122e+09 4.76e-156 *** C2 -4.01230e-08 9.75099e-09 -4.115 0.0007 *** AB -2.80596e-09 7.36439e-010 -3.810 0.0014 *** BC 4.50756e-08 1.09837e-08 4.104 0.0007 *** AC 3.16735e-09 9.76208e-010 3.245 0.0048 *** ABC 5.00000 2.81483e-010 1.776e+010 3.14e-165 *** Среднее зав. перемен 746.4821 Ст. откл. зав. перемен 1026.452 Сумма кв. остатков 4.53e-18 Ст. ошибка модели 5.16e-10 R-квадрат 1.000000 Испр. R-квадрат 1.000000 Лог. правдоподобие 566.0131 Крит. Акаике -1110.026 Крит. Шварца -1095.372 Крит. Хеннана-Куинна -1105.546 Исключая константу, наибольшее р-значение получено для переменной 5 (A2) Код:
Модель 5: МНК, использованы наблюдения 1-28 Зависимая переменная: Y Коэффициент Ст. ошибка t-статистика P-значение -------------------------------------------------------------- const -4.38415e-09 1.55420e-09 -2.821 0.0113 ** A 1.00000 6.75041e-010 1.481e+09 3.12e-155 *** B 8.47465e-09 2.27841e-09 3.720 0.0016 *** C 1.00000 1.11757e-08 8.948e+07 2.72e-133 *** B2 5.00000 9.18925e-010 5.441e+09 2.11e-165 *** C2 -3.88601e-08 9.17774e-09 -4.234 0.0005 *** AB -2.70371e-09 6.62518e-010 -4.081 0.0007 *** BC 4.36974e-08 1.03449e-08 4.224 0.0005 *** AC 3.08468e-09 9.12015e-010 3.382 0.0033 *** ABC 5.00000 2.59637e-010 1.926e+010 2.77e-175 *** Среднее зав. перемен 746.4821 Ст. откл. зав. перемен 1026.452 Сумма кв. остатков 4.26e-18 Ст. ошибка модели 4.86e-10 R-квадрат 1.000000 Испр. R-квадрат 1.000000 Лог. правдоподобие 566.8903 Крит. Акаике -1113.781 Крит. Шварца -1100.459 Крит. Хеннана-Куинна -1109.708 P.S. Некоторые коэффициенты ничтожно малы. Можно попробовать обойтись без этих строк. P.P.S. А в GNU R это делается вот так Последний раз редактировалось Hogfather; 23.12.2012 в 14:07. |
|
---------
DNF is not an option
|
||
24.05.2013, 21:44 | #7 |
Newbie
Регистрация: 24.05.2013
Сообщений: 1
|
Здравствуйте!
Я использовала МНК для оценки параметров модели. Построила уравнение. Провела тест на гетероскедастичность: результат положительный. Теперь, как я понимаю, мне нужно применить др. линейную модель: взвешенный МНК или модель с поправкой на гет. Подскажите, пожалуйста, что это за метод такой модель с поравкой на гет.?Не могу такого найти в литературе. И вот еще: взвешивать нужно по какой переменной? |
24.05.2013, 22:13 | #8 |
Platinum Member
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,304
|
Olga_Olga, здравствуйте, выше (#4) есть ссылка на книгу. См. страницу 155 и далее. Это если кратко. Подробнее постараюсь ответить на следующей неделе.
|
---------
DNF is not an option
|
|
20.11.2013, 23:14 | #9 |
Newbie
Регистрация: 20.11.2013
Сообщений: 7
|
Подскажите пожалуйста как работает фильтр Годрика-Прескота, пытаюсь по гайду разобраться, но никак не пойму
|
20.11.2013, 23:47 | #10 |
Platinum Member
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,304
|
JoeBlack, в gretl это фильтр работает именно так как задумано его создателями: выделяет тренд и циклическую составляющую и из данных.
В сумме эти два компонента дают исходные данные. Основная решаемая задача -- выделение тренда или отклонения от тренда для последующего анализа. Достаточно подробно описано вот тут: http://en.wikipedia.org/wiki/Hodrick...rescott_filter |
---------
DNF is not an option
|
|
|
Опции темы | |
|
|