Портал аспирантов
 

Вернуться   Портал аспирантов > Компьютер для аспирантов > Software (программное обеспечение)

Ответ
 
Опции темы
Старый 02.12.2012, 12:31   #1
Hogfather
Platinum Member
 
Аватар для Hogfather
 
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,298
По умолчанию GRETL: Вопросы и ответы.

/
Внимание!
Автор темы совместно с Администрацией портала просит писать в эту тему только относящееся к GRETL. Благодарности, разговоры о погоде будут безжалостно удаляться. Все "чмоки", пожалуйста, во флейме. Вопросы по 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.
Вложения
Тип файла: zip data.zip (654 байт, 81 просмотров)
---------
DNF is not an option
Hogfather вне форума   Ответить с цитированием
Реклама
Старый 02.12.2012, 22:32   #2
Hogfather
Platinum Member
 
Аватар для Hogfather
 
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,298
По умолчанию GRETL и R

Вот тут наши корреспонденты интересуются, мол зачем тогда R, если все так чудесно в GRETL. Действительно, работа с регрессией и временными рядами там выше всяческих похвал. Более того, своим студентам я рекомендовал на флешке держать portable версию gretl, чтобы в любой аудитории можно было продолжить начатое. Но, при всех его удобствах, GRETL заточен на решение специфических задач. Если нам нужен серьезный анализ, то в R это сделать проще и быстрее.

К счастью, есть возможность работать с R прямо из GRETL, для этого в меню "Инструменты" выбираем "Запустить R". В сеансе R мы увидим строчку.
Код:
current data loaded as data frame "gretldata"
>
А дальше уже проще. Это именно наши данные и можно с ними делать все что хочется. А если учесть, что gretl читает Excel'овские файлы, то жизнь становится не столько прекрасна, сколько удивительна.

Вот Вам, пожалуйста, первые строки нашей таблицы
Код:
> 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, которые можно создать из меню Файл-Скрипты-Новый скрипт-Скрипт для 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
Hogfather вне форума   Ответить с цитированием
Старый 09.12.2012, 15:58   #3
валентин
Newbie
 
Регистрация: 08.02.2011
Адрес: Санкт-Петербург
Сообщений: 5
По умолчанию

Hogfather, Добрый день.
Есть ли у Вас руководство пользователя GRETL на русском языке?
И если есть, сможете ли Вы прислать его по адресу nikanorv@mail.ru
Заранее благодарен и с уважением Никоноров Валентин
валентин вне форума   Ответить с цитированием
Старый 10.12.2012, 22:58   #4
Hogfather
Platinum Member
 
Аватар для Hogfather
 
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,298
По умолчанию

Цитата:
Сообщение от валентин Посмотреть сообщение
Есть ли у Вас руководство пользователя GRETL на русском языке?
Как такового руководства на русском я не видел. Единственное, что могу порекомендовать:

Тадеуш Куфель
Эконометрика. Решение задач с применением пакета программ GRETL
Издательство: Горячая Линия - Телеком
ISBN 5-93517-307-7, 83-0114284-7; 2007 г.
200 стр.

Но электронной копии пока не нашел (я себе эту книгу покупал). Электронная копия доступна вот тут, но качество то еще...

Добавлено через 14 часов 22 минуты
Цитата:
Уважаемый Hogfather!
Подскажите, пожалуйста, на форуме описан этот процесс:
"Данные перегнаны из R в Excel. Файл Excel импортирован и сохранен в формате gretl"?
Я надеялся, что это очевидно. Не угадал. Итак, разберемся с форматами, которые читает/пишет Gretl
1. Gretl умеет читать файлы Excel, включая последние версии. Данные должны быть в виде таблицы на отдельном листе, заголовки начинаются с ячейки A1 и идут по этой строке, данные -- с ячейки A2. Для того, чтобы прочитать такие данные, выбираем меню Файл-Открыть-Импорт-Excel
2. Текстовые/CSV файлы. Меню Файл-Открыть-Импорт-CSV, далее выбираем разделитель записей. При настроенной русской локализации Windows -- это, обычно, точка с запятой (;).
3. Прочее, включая OpenOffice (см. картинку)




Данные можно сохранять в формате Gretl (Файл-Сохранить и Файл-Сохранить как...), а также экспортировать (Файл-Экспорт) все или часть данных в формат CSV, gretl, GNU R и несколько других.

Таким образом, обмен данными между программами может выглядеть так:
Откуда берем данныеФормат обменаКуда перегоняемПримечание
Excelxls, xlsx или csvGretlЧитается прямо в формате Excel
ExcelcsvGNU RМожно и напрямую, но с доп. библиотекой, а также через clipboard (см. read.table("clipboard",header=T) )
GretlcsvExcelИспользуйте правильный разделитель данных. Лучше ";". Например, сохраняем таблицу MyData: write.table(MyData,"myData.csv", sep = ";", dec = "."). Для небольшого объема данных можно через clipboard, заменив имя файла на "clipboard" и использовав sep = "\t" (табулятор).
GretlGNU R (.RData), csvGNU RЛучше использовать внутренний формат .RData, потом в R воспользоваться командой load("имя файла")
GNU RcsvExcelИспользуйте правильный разделитель данных. Лучше ";".
GNU RcsvgretlВ случае, если запущена сессия из gretl, можно также воспользоваться командой gretl.export(). Подробности см. в руководстве пользователя раздел "Gretl and R"

Последний раз редактировалось Hogfather; 11.12.2012 в 14:19.
---------
DNF is not an option
Hogfather вне форума   Ответить с цитированием
Старый 12.12.2012, 08:51   #5
Hogfather
Platinum Member
 
Аватар для Hogfather
 
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,298
По умолчанию Письма наших читателей

Вот тут нам пишут.

Цитата:
А если три звездочки у всех коэффициентов, то уравнение принимает какой вид?

Получается сумма: z=e^0,00242277x + e^0,00346567y ?
Немного старческого брюзжания

Мой научный руководитель в таких случаях всегда рассказывал байку про то, как зайца учат на барабане играть. Сунут ему в лапки ватку со спиртом и поджигают, заяц начинает лапками стучать, если барабан подставят, то, вроде как, и играет. А потом зайцу достаточно только коробок со спичками показать, как он, бедолага, от испуга тут же лапками стучать начинает.

К чему это я. Мне казалось, что я эту тему уже разобрал, но, похоже, неубедительно. Попробуем еще раз.


Так вот, такая сумма не получается. Еще раз подробно.
Имеем модель вида .

Вспоминаем школьный курс, и приводим формулу вот к такому виду

Дальше разберемся с коэффициентами. Я уже писал про свободный член, но, раз девушкам это нравится, повторюсь.

В данном случае 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
Hogfather вне форума   Ответить с цитированием
Старый 22.12.2012, 22:56   #6
Hogfather
Platinum Member
 
Аватар для Hogfather
 
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,298
По умолчанию GRETL регрессионный анализ. Метод наименьших квадратов (МНК). Ответы на вопросы.

Получил тут письмо и призадумался.
Цитата:
Уважаемый, Hogfather!
Мне очень нужна Ваша помощь.. Без Вас никак. Из Ваших уроков я поняла, как вывести логарифмическую формулу. Теперь, похоже, у меня должна быть степенная функция от трёх переменных. Возможно, что потом понадобится ещё другая зависимость...
Всё-таки никудышный из меня педагог. Не моё это, явно. Что ж, попробую объяснить еще раз.
Начнем с азов.
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
2. Говорим, а не замахнуться ли нам на полином. Да запросто, а что нам даёт полином? А просто расчет дополнительных коэффициентов у членов A2, B2, С2 и, если очень хочется, у AB, BC, AC и ABC. Как мы их можем добавить к нашим данным? Да элементарно!
Меню "Добавить"-"Новую переменную". В появившемся окне пишем
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)
Коню понятно, что 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
Hogfather вне форума   Ответить с цитированием
Старый 24.05.2013, 21:44   #7
Olga_Olga
Newbie
 
Регистрация: 24.05.2013
Сообщений: 1
По умолчанию

Здравствуйте!

Я использовала МНК для оценки параметров модели. Построила уравнение. Провела тест на гетероскедастичность: результат положительный. Теперь, как я понимаю, мне нужно применить др. линейную модель: взвешенный МНК или модель с поправкой на гет. Подскажите, пожалуйста, что это за метод такой модель с поравкой на гет.?Не могу такого найти в литературе.
И вот еще: взвешивать нужно по какой переменной?
Olga_Olga вне форума   Ответить с цитированием
Старый 24.05.2013, 22:13   #8
Hogfather
Platinum Member
 
Аватар для Hogfather
 
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,298
По умолчанию

Olga_Olga, здравствуйте, выше (#4) есть ссылка на книгу. См. страницу 155 и далее. Это если кратко. Подробнее постараюсь ответить на следующей неделе.
---------
DNF is not an option
Hogfather вне форума   Ответить с цитированием
Старый 20.11.2013, 23:14   #9
JoeBlack
Newbie
 
Регистрация: 20.11.2013
Сообщений: 7
По умолчанию

Подскажите пожалуйста как работает фильтр Годрика-Прескота, пытаюсь по гайду разобраться, но никак не пойму
JoeBlack вне форума   Ответить с цитированием
Старый 20.11.2013, 23:47   #10
Hogfather
Platinum Member
 
Аватар для Hogfather
 
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,298
По умолчанию

JoeBlack, в gretl это фильтр работает именно так как задумано его создателями: выделяет тренд и циклическую составляющую и из данных.
В сумме эти два компонента дают исходные данные.
Основная решаемая задача -- выделение тренда или отклонения от тренда для последующего анализа.

Достаточно подробно описано вот тут:
http://en.wikipedia.org/wiki/Hodrick...rescott_filter
---------
DNF is not an option
Hogfather вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Текущее время: 04:09. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
© 2001—2024, «Аспирантура. Портал аспирантов»
Рейтинг@Mail.ru