我需要一些帮助来理解回归模型的输出.

library(zoo)
library(ggplot2)

a <- as.yearmon(c("2022-01", "2022-02", "2022-03", "2022-04", "2022-05"))
b <- c(2,0,2,1,1)

df <- data.frame(a,b)
df

ggplot(df, aes(x = a, y = b)) +
  geom_point() +
  stat_smooth(method = lm)

lm(b ~ a, df)

推荐答案

另一种方法是改变时间变量的单位,以便回归结果与绘图给出的视觉直觉相匹配.方法是将时间变量转换为"自第一个数据点起的月份":

df$months_since_start <- 12 * (df$a - df$a[1])

df
#>          a b months_since_start
#> 1 Jan 2022 2                  0
#> 2 Feb 2022 0                  1
#> 3 Mar 2022 2                  2
#> 4 Apr 2022 1                  3
#> 5 May 2022 1                  4

现在,您的lm个结果与绘图更加一致(每月的截距为1.4,斜率为-0.1)

lm(b ~ months_since_start, df)
#> 
#> Call:
#> lm(formula = b ~ months_since_start, data = df)
#> 
#> Coefficients:
#>        (Intercept)  months_since_start  
#>                1.4                -0.1

我认为这可能是一种更自然的方式来呈现结果,因为尽管它在数字上是等效的,说"该值从年初的1.4开始,平均每月下降0.1"可能比"该值从公元前1年的2043开始,此后每年下降1.2"更准确

reprex package(v2.0.1)于2022年6月21日创建

R相关问答推荐

如何按照特定顺序拆分字符?

创建重复删除的唯一数据集组合列表

从多个前置日期中获取最长日期

如何删除多个.CSV文件的行

更改编号列表的 colored颜色

在R中替换函数中的特定符号

将文件保存到新文件夹时,切换r设置以不必创建目录

从所有项的 struct 相同的两级列表中,将该第二级中的所有同名项绑定在一起

在RStudio中堆叠条形图和折线图

无法正确设置动态创建的Quarto标注的格式

如何在R中描绘#符号?

如何根据数据帧中的值从该数据帧中提取值?

派生程序包| ;无法检索';return()';的正文

按列中显示的配对组估算NA值

如何在ggplot2中创建多个y轴(每个变量一个)

使用geom_iles在一个切片中包含多个值

如何调整一个facet_work()面板内的框图和移动标签之间的水平宽度?

在ggplot2图表中通过端点连接点

使用&Fill&Quot;在gglot中创建 colored颜色 渐变

在直方图中显示两个变量