Как нарисовать линию наилучшего соответствия в r (с примерами)


Вы можете использовать любой из следующих методов, чтобы нарисовать линию наилучшего соответствия в R:

Метод 1: нарисуйте линию наилучшего соответствия в базе R.

 #create scatter plot of x vs. y
plot(x, y)

#add line of best fit to scatter plot
abline(lm(y ~ x))

Метод 2: постройте наиболее подходящую линию в ggplot2.

 library (ggplot2)

#create scatter plot with line of best fit
ggplot(df, aes (x=x, y=y)) +
    geom_point() +
    geom_smooth(method=lm, se= FALSE )

Следующие примеры показывают, как использовать каждый метод на практике.

Пример 1: рисование линии наилучшего соответствия в базе R

Следующий код показывает, как нарисовать линию наилучшего соответствия для простой модели линейной регрессии с использованием базиса R:

 #define data
x <- c(1, 2, 3, 4, 5, 6, 7, 8)
y <- c(2, 5, 6, 7, 9, 12, 16, 19)

#create scatter plot of x vs. y
plot(x, y)

#add line of best fit to scatter plot
abline(lm(y ~ x)) 

Не стесняйтесь также изменить стиль точек и линий:

 #define data
x <- c(1, 2, 3, 4, 5, 6, 7, 8)
y <- c(2, 5, 6, 7, 9, 12, 16, 19)

#create scatter plot of x vs. y
plot(x, y, pch= 16 , col=' red ', cex= 1.2 )

#add line of best fit to scatter plot
abline(lm(y ~ x), col=' blue ', lty=' dashed ') 

Мы также можем использовать следующий код для быстрого расчета линии наилучшего соответствия:

 #find regression model coefficients
summary(lm(y ~ x))$coefficients

              Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.8928571 1.0047365 -0.888648 4.084029e-01
x 2.3095238 0.1989675 11.607544 2.461303e-05

Линия наилучшего соответствия оказывается: y = -0,89 + 2,31x .

Пример 2: построение линии наилучшего соответствия в ggplot2

Следующий код показывает, как построить линию наилучшего соответствия для простой модели линейной регрессии с использованием пакета визуализации данных ggplot2 :

 library (ggplot2)

#define data
df <- data. frame (x=c(1, 2, 3, 4, 5, 6, 7, 8),
y=c(2, 5, 6, 7, 9, 12, 16, 19))

#create scatter plot with line of best fit
ggplot(df, aes (x=x, y=y)) +
    geom_point() +
    geom_smooth(method=lm, se= FALSE )

Смело меняйте и эстетику сюжета:

 library (ggplot2)

#define data
df <- data. frame (x=c(1, 2, 3, 4, 5, 6, 7, 8),
y=c(2, 5, 6, 7, 9, 12, 16, 19))

#create scatter plot with line of best fit
ggplot(df, aes (x=x, y=y)) +
    geom_point(col=' red ', size= 2 ) +
    geom_smooth(method=lm, se= FALSE , col=' purple ', linetype=' dashed ') +
    theme_bw() 

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в R:

Как выполнить простую линейную регрессию в R
Как выполнить множественную линейную регрессию в R
Как интерпретировать результаты регрессии в R

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *