如何解决LM 估计中 gggmisc 和 broom 包之间的差异
我正在尝试从许多线性回归模型中提取斜率值。我绘制了不同天丙酮排放量与含水量的关系图。
我有这些图表和模型
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)
知道为什么我没有得到相同的斜率值吗?
非常感谢所有帮助!
解决方法
您交换了 x 和 y。可能是因为使用了复杂的“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 举报,一经查实,本站将立刻删除。