如何提取有关线性回归线的信息(例如截距和渐变)

时间:2019-01-21 06:15:55

标签: r ggplot2 lm

我几乎是R新手,找不到正确的代码来做,这似乎主要是人们要求一次在多行中执行。

基本上,我在g g图2中创建了一个散点图,并使用了线性回归(l M)。我有兴趣弄清楚线性回归的截距和梯度是多少。我可以使用哪种代码来做到这一点?

希望这是一个简单的问题:) 谢谢!

1 个答案:

答案 0 :(得分:3)

A.S.K。注释中没有注释,没有从ggplot本身直接做到的方法。

幸运的是,重写线性回归非常简单。举例来说,我将mtcars数据集与预先安装在R上的汽车信息一起使用。

假设您的代码看起来像这样:

require(ggplot2)
#> Loading required package: ggplot2

ggplot(data = mtcars, mapping = aes(x = mpg, y = hp)) +
  geom_point() +
  geom_smooth(method = "lm", se = FALSE)

产生像下面这样的漂亮情节

然后,您可以使用以下代码:


summary(lm(formula = hp ~ mpg, data = mtcars))

这将产生您需要的线性模型信息。

#> 
#> Call:
#> lm(formula = hp ~ mpg, data = mtcars)
#> 
#> Residuals:
#>    Min     1Q Median     3Q    Max 
#> -59.26 -28.93 -13.45  25.65 143.36 
#> 
#> Coefficients:
#>             Estimate Std. Error t value Pr(>|t|)    
#> (Intercept)   324.08      27.43  11.813 8.25e-13 ***
#> mpg            -8.83       1.31  -6.742 1.79e-07 ***
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#> 
#> Residual standard error: 43.95 on 30 degrees of freedom
#> Multiple R-squared:  0.6024, Adjusted R-squared:  0.5892 
#> F-statistic: 45.46 on 1 and 30 DF,  p-value: 1.788e-07

继续,请检查一下R的简介,例如Datacamp的Quick-R或Hadley Wickham的R for Data Science。您将立即自己解决这些问题。