Как добавить Q-Q график в R Markdown?

#r #r-markdown

#r #r-markdown

Вопрос:

Я установил линейную модель, для которой я хочу создать график qq. Я могу сделать это в стандартной консоли R, используя plot(mymodel) , а затем нажав enter во второй раз, но как я могу создать этот график в Markdown?

Ответ №1:

Обновленный ответ

С {ggfortify} помощью, {ggplot2} теперь можно обрабатывать lm объекты ggplot2::autoplot() и создавать стандартные диагностические графики. Это может быть еще одним хорошим способом включить диагностику регрессии в ваш RMD. Если, например, вам нужен только qqplot, вы можете указать autoplot(which = 3) .

 # load libraries
library(ggfortify)
#> Warning: package 'ggfortify' was built under R version 4.1.1
#> Loading required package: ggplot2
library(ggplot2) # loaded by ggfortify anyhow but included to be explicit

# simulate data
dat <- as.data.frame(rmultinom(2, 1000, 1:50))

# build linear model
mymodel <- lm(V1 ~ V2, data = dat)

# autoplot regression diagnostics
ggplot2::autoplot(mymodel)
 

 # autoplot just the qqplot
ggplot2::autoplot(mymodel, which = 3)
 

Создано 2021-08-30 пакетом reprex (v2.0.0)

Оригинальный ответ

Вам необходимо явно получить доступ к остаткам вашей модели, rstandard(mymodel) а затем создать qqplot. Вот пример:

 # simulate some data
dat <- as.data.frame(rmultinom(2, 1000, 1:50))

# build linear model
mymodel <- lm(dat$V1 ~ dat$V2)

# make qqplot of residuals
qqnorm(residuals(mymodel))

 

Что дает вам:

введите описание изображения здесь