微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

LM 估计中 gggmisc 和 broom 包之间的差异

如何解决LM 估计中 gggmisc 和 broom 包之间的差异

我正在尝试从许多线性回归模型中提取斜率值。我绘制了不同天丙酮排放量与含水量的关系图。

我有这些图表和模型

enter image description here

我尝试使用此代码提取斜率值:

Library(broom)
Library(tidyverse)

lm_table <- df %>%
  nest_by(days) %>% 
  summarise(mdl = list(lm(water_content ~ acetone,data)),.groups = "drop") %>% 
  mutate(adjrsquared = map_dbl(mdl,~summary(.)$adj.r.squared ),mdl = map(mdl,broom::tidy)) %>% 
  unnest(mdl)%>%
  filter(term=="acetone")

还有这个代码

lm_table2 <- df %>%
  nest_by(days) %>%
  mutate(model = list(lm(water_content ~ acetone,coefficients2 = list(tidy(model)))

coefficients2 = lm_table2 %>% 
  unnest(coefficients2)

然而,这两个代码给出的斜率值与我从图中得到的值不同。关于为什么会这样的任何想法?

这是数据

df <- structure(list(i.x45.03 = c(22,17,11,1782,1767,250,3568,79,219,855,12009,395,1552,705,2282,84,3396,252,2058,1480,5,745,2573,1005,946,3320,5406,2192,20,1207,9519,66,463,1095,16556,88,2695,275,16,1577,29,3221,25,6295,2,63,123,8,1,37,5308,4546,994,4567,421,1938,19480,1027,3474,1982,2819,69,27733,2152,15429,996,3435,8748,17062,269,26188,35823,2572,67,761,13493,9,89,21644,3,13,30,19,242,7246,20081,77,5878,22,4,93,12,73,48,87,82,7,34,990,1246,1944,633,23640,262,5399,83,4417,125,7801,6755,6,39,262),i.water_content_percent_es = c(98,85,14,21,28,50,59,61,70,46,23,10,75,52,47,86,24,31,35,32,40,49,91,15,90,60,53,98,91),daysincubated4 = c(0,116,4),days = c(0,water_content = c(98,acetone = c(22,262)),row.names = c(NA,-192L),class = "data.frame")

我制作的图表的代码是:

library(ggpmisc)
library(tidyverse)

formula <- y~x
ggplot(df,aes(water_content,acetone)) +
  geom_point() +
  geom_smooth(method = "lm",formula = y~x) +
  theme_bw()+
  facet_wrap(~days,scales = "free")+
  stat_poly_eq(
    aes(label = paste(stat(adj.rr.label),stat(eq.label),stat(p.value.label),sep = "*\",\"*")),formula = formula,parse = TRUE,size=3)

知道为什么我没有得到相同的斜率值吗?

非常感谢所有帮助!

解决方法

您交换了 xy。可能是因为使用了复杂的“tidyverse”编码,这并不明显。

library(nlme)
lmList(acetone ~ water_content | days,data = df)

给予

Call:
  Model: acetone ~ water_content | days 
   Data: df 

Coefficients:
    (Intercept) water_content
0    3314.26811    -31.663431
4   12046.87296   -154.277916
24   3103.13075    -44.368527
116    63.82385     -0.792739

Degrees of freedom: 192 total; 184 residual
Residual standard error: 4538.636

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。