Какие функции вы используете в R, чтобы подгонять кривую к вашим данным и проверить, насколько хорошо подходит эта кривая? Какие результаты считаются хорошими?
Доброкачественность функций в R
Ответ 1
Только первая часть этого вопроса может заполнить целые книги. Просто некоторые быстрые варианты:
-
lm()
для стандартных линейных моделей -
glm()
для обобщенных линейных моделей (например, для логистической регрессии) -
rlm()
из пакета MASS для надежных линейных моделей -
lmrob()
из пакета robustbase для надежных линейных моделей. -
loess()
для нелинейных/непараметрических моделей
Затем существуют модели, специфичные для домена, например, временные ряды, микроэкономика, смешанные эффекты и многое другое. Некоторые из представлений задач, например. Econometrics обсудить это более подробно. Что касается доброты, это то, что можно легко провести целую книгу, обсуждая.
Ответ 2
Рабочие лошадки канонической кривой, фитинги в R, lm()
, glm()
и nls()
. Для меня доброта соответствия - подзадача в более крупной проблеме выбора модели. Infact, неверно использующий корректность (например, через ступенчатую регрессию), может привести к серьезной неопределенной модели (см. Книгу Харрела "Стратегии моделирования регрессии" ). Вместо того, чтобы обсуждать проблему с нуля, я рекомендую книгу Харрелла для lm
и glm
. Библей Venables и Ripley является кратким, но все же стоит прочитать. "Расширение линейной модели с помощью R" от Faraway является всеобъемлющим и читаемым. nls не покрывается этими источниками, но "нелинейная регрессия с R" Ритцем и Стрейбигом заполняет пробел и очень практична.
Ответ 3
Функция nls()
(http://sekhon.berkeley.edu/stats/html/nls.html) довольно стандартная для нелинейного аппроксимации кривой наименьших квадратов. Ши квадрат (сумма квадратов остатков) является метрикой, которая оптимизирована в этом случае, но она не нормализована, поэтому вы не можете легко использовать ее, чтобы определить, насколько хорошо подходит. Главное, что вы должны убедиться, что ваши остатки обычно распределяются. К сожалению, я не уверен в автоматическом способе этого делать.
Ответ 4
На сайте Quick R есть разумное резюме основных функций, используемых для установки моделей и тестирования подгонки вместе с образцом R-кода:
Ответ 5
Главное, что вы должны обеспечить что ваши остатки обычно распределены. К сожалению, я не уверен в автоматическом способе сделать это.
qqnorm()
, вероятно, можно было бы изменить, чтобы найти корреляцию между квантилями образцов и теоретическими квантилями. По сути, это будет просто количественная интерпретация нормального квантильного графика. Возможно, было бы полезно использовать несколько значений коэффициента корреляции для разных диапазонов квантилей. Например, если коэффициент корреляции близок к 1 для средних 97% данных и намного ниже у хвостов, это говорит о том, что распределение остатков примерно нормальное, с некоторой потерей в хвостах.
Ответ 6
Лучше всего держать простую и видеть, работают ли линейные методы "хорошо enuff". Вы можете судить о вашей добродетели в соответствии с GENERALY, посмотрев на R-квадрат и статистику F, вместе, никогда не разделяйтесь. Добавление переменных в вашу модель, которые не имеют отношения к вашей зависимой переменной, может увеличить R2, поэтому вы также должны учитывать статистику F.
Вы также должны сравнить свою модель с другими вложенными или более простыми моделями. Сделайте это с помощью теста соответствия журнальной вероятности, если зависимые переменные одинаковы.
Тест Jarque-Bera хорош для проверки нормальности остаточного распределения.