- •Написание собственных функций
- •1.1 Простые примеры
- •1.2 Определение новых бинарных операторов
- •1.3 Именованные параметры и умолчания
- •1.4 Параметр ‘...’
- •1.5 Присвоения в пределах функций
- •1.6 Область действия
- •1.7 Фактор эффективности при проектировании блоков
- •1.8 Отбрасывание всех имен при печатании массива
- •1.9 Рекурсивное числовое интегрирование
- •1.10 Настройка окружения
- •1.11 Классы, универсальные функции и объектно-ориентированное программирование
- •Статистические модели в r
- •2.1 Определение статистических моделей; формулы
- •2.2 Линейные модели
- •2.3 Универсальные функции для извлечения информации о модели
- •2.4 Дисперсионный анализ и сравнение модели
- •2.5 Обновление подогнанных моделей
- •Графические процедуры
- •3.1 Высокоуровневые команды рисования
- •3.2 Функция plot()
- •3.3 Отображение многомерных данных
- •3.4 Графический вывод
- •3.5 Математическая аннотация
- •3.6 Интерактивная графика
- •3.7 Использование графических параметров
- •Список використаної літератури
2.2 Линейные модели
Основная функция для подгонки обычным многоуровневым моделям является lm(),а усовершенствованный вариант вызова выглядит следующим образом:
> fitted.model <- lm(formula, data = data.frame)
Например:
> fm2 <- lm(y ~ x1 + x2, data = production)
будет соответствовать подгонке множественной регрессионной модели y на x1 и x2 (с неявным параметром смещения).
Важный (но технически дополнительный) параметр data = production указывает, что любые переменные, необходимые для создания модели, должны быть в первую очередь из фрейма данных production. Это не зависит от того, был ли фрейм данных production присоединен к пути поиска или нет.
2.3 Универсальные функции для извлечения информации о модели
Значением lm()является подогнанный объект model; технически это список результатов класса "lm". В этом случае информация о подогнанной модели может быть выведена на экран, извлечена, графически изображена и так далее при использовании универсальных функций, которые относятся к объектам класса "lm". Они включают:
add1 |
deviance |
formula |
predict |
step |
drop1 |
kappa |
|
summary |
anova |
effects |
labels |
proj |
vcov |
coef |
family |
plot |
residuals |
Краткое описание наиболее часто используемых функций дано ниже.
anova(object_1, object_2)
Сравните подмодель с внешней моделью и произведите таблицу дисперсионного анализа.
coef(object)
Сумма квадратов остатков, взвешенная если возможно.
formula(object)
Извлеките формулу модели.
plot(object)
Произведите четыре рисунка, показав остатки, подогнанное значение и некоторую диагностику.
predict(object, newdata=data.frame)
Предоставленному фрейму данных нужно было специфицировать переменные с теми же самыми метками как оригинал. Значение - вектор или матрица ожидаемых значений, соответствующих значениям определенных переменных в data.frame.
Выберите подходящую модель, добавляя или отбрасывая параметры и сохраняя иерархии. Возвращается модель с наименьшим значением AIC (информационный критерий), обнаруженным в пошаговом поиске.
summary(object)
Напечатайте общую сводку результатов регрессионного анализа.
vcov(object)
Возвращает матрицу ковариации дисперсии основных параметров подогнанного объекта модели.
2.4 Дисперсионный анализ и сравнение модели
Функция подгонки модели aov(формула, data=data.frame) работает на самом простом уровне очень похожим способом как функцияlm(), и большинство универсальных функций, перечисленных в таблице в Разделе 11.3 [Универсальные функции для извлечения информацию о модели].
Нужно отметить, что дополнительно aov()позволяет анализировать модели с множественными слоями ошибок, такими как рисунками разделенных экспериментов, или сбалансированные неполноблочные планы с восстановлением межблочной информации. Формула модели:
response ~ mean.formula + Error(strata.formula)
указывает на многослойный эксперимент с ошибками слоев определенными strata.formula. В самом простом случаеstrata.formula- просто фактор, когда определяет два слоя эксперимента, а именно, между и внутри уровней фактора.
Например, со всеми определенными переменными факторами, формула модели выглядит следующим образом:
> fm <- aov(yield ~ v + n*p*k + Error(farms/blocks), data=farm.data)