Прямо сейчас я создаю несколько-предикторов линейная модель и генерирую диагностические графики оценить предположения регрессии. (Это для аналитического класса статистики множественной регрессии, который я люблю в данный момент :-)
Мой учебник (Cohen, Cohen, Запад и Aiken 2003) рекомендует вывести каждый предиктор на печать против невязок, чтобы удостовериться что:
На точке (2), говорит следующее мой учебник:
Некоторые статистические пакеты позволяют аналитику строить графики соответствия lowess в средних из невязок (с 0 строками), 1 стандартное отклонение выше среднего, и 1 стандартное отклонение ниже средних из невязок.... В данном случае {их пример}, эти две строки {средний + 1sd и средний - 1sd} остается примерно параллельным lowess {0} строка, согласовывающаяся с интерпретацией, которую различие невязок не изменяет как функция X. (p. 131)
Я знаю, как генерировать scatterplot с "с 0 строками":
# First, I'll make a simple linear model and get its diagnostic stats
library(ggplot2)
data(cars)
mod <- fortify(lm(speed ~ dist, data = cars))
attach(mod)
str(mod)
# Now I want to make sure the residuals are homoscedastic
qplot (x = dist, y = .resid, data = mod) +
geom_smooth(se = FALSE) # "se = FALSE" Removes the standard error bands
Но делает любой знает, как я могу использовать ggplot2
и qplot
генерировать графики где с 0 строками, "средний + 1sd" И "средний - 1sd" строки были бы наложены? Это - странный/сложный вопрос спросить?
Друзья, я хочу извиниться за свое невежество. Хэдли абсолютно прав, и ответ все время был прямо передо мной. Как я и подозревал, мой вопрос был порожден статистическим, а не программным незнанием.
geom_smooth ()
по умолчанию лесс
сглаживание, и он накладывает линии + 1sd и -1sd как часть сделки. Именно это имел в виду Хэдли, когда сказал: «Разве это не 68% доверительный интервал?» Я просто совершенно забыл, что 68% интервал равен , и продолжал искать то, что я уже знал, как это сделать. Не помогло то, что я фактически отключил доверительные интервалы в моем коде, указав geom_smooth (se = FALSE)
.
# First, I'll make a simple linear model and get its diagnostic stats.
library(ggplot2)
data(cars)
mod <- fortify(lm(speed ~ dist, data = cars))
attach(mod)
str(mod)
# Now I want to make sure the residuals are homoscedastic.
# By default, geom_smooth is loess and includes the 68% standard error bands.
qplot (x = dist, y = .resid, data = mod) +
geom_abline(slope = 0, intercept = 0) +
geom_smooth()
Хэдли реализовал действительно красивый и простой способ получить то, что я хотел с самого начала. Но поскольку я сосредоточился на линиях лесса , я упустил из виду тот факт, что 68% доверительный интервал был ограничен теми самыми линиями, которые мне были нужны. Приносим извинения за беспокойство.
Не могли бы вы рассчитать значения стандартного отклонения +/- на основе данных и добавить их подобранную кривую к графику?
Посмотрите на мой вопрос « изменить lm или функцию loess .. »
Я не уверен, что следил за вашим вопросом очень хорошо, но, возможно, будет работать:
+ stat_smooth(method=yourfunction)
при условии, что вы определите свою функцию как , описанную здесь .