Ошибка Ньюи-Веста для множественных линейных регрессий - PullRequest
0 голосов
/ 12 февраля 2019

У меня есть фрейм данных со 126 столбцами, и я хочу запустить линейные регрессии по всем столбцам.Я сделал это с помощью функции lapply ():

my_lms <- lapply(1:126, function(x) df[,x] ~ df$x1))

Снова с помощью функции lapply () я получаю сводную статистику:

lapply(my_lms, summary)

Мой вопрос заключается в том, как получить такое же резюместатистика с использованием ошибок Ньюи-Уэста?

Я пытался:

coeftest(my_lms, vcov. = NeweyWest)

, но это выдает мне сообщение об ошибке:
Ошибка в UseMethod ("estfun"): не применимометод для 'estfun', примененный к объекту класса "list"

Спасибо

1 Ответ

0 голосов
/ 12 февраля 2019

Стефан совершенно прав, но я подумал, что нужно написать объяснение сегодня вечером.Ваш объект my_lms представляет собой список, каждый элемент которого является вложенным объектом с соответствующим классом для функции coeftest.Тем не менее, функция coeftest не имеет механизма для последовательного извлечения "основного списка".Поэтому вам нужно снова использовать lapply, а coeftest - это функциональный аргумент.Дополнительные параметры могут быть переданы в coeftest с помощью механизма lappy «тройные точки»: цитируемый материал со страницы ?lapply

Использование

lapply (X, FUN, ...)

lapply(my_lms, coeftest, vcov. = NeweyWest)
...