对每组数据框进行线性拟合,检查异方差性
Doing a linear fit for each group of a data frame, check heteroscedasticity
我有这样一个数据框:
ORD exp type mu
1 Combi pH=7 exp_F mu 0.15637365
2 Combi pH=7 exp_F mu 0.12817901
3 Combi pH=7 exp_F mu 0.13392221
4 Combi pH=7 exp_F mu 0.09683254
5 Combi pH=7 exp_F mu 0.11249738
6 Combi pH=7 exp_F mu 0.10878719
7 Combi pH=7 exp_F mu 0.11019295
8 Combi pH=7 exp_F mu 0.12100511
9 Combi pH=7 exp_F mu 0.09803942
10 Combi pH=7 exp_F mu 0.13842086
11 Combi pH=7 exp_F mu 0.12778964
12 ORD0793 exp_F mu 0.13910441
13 ORD0793 exp_F mu 0.12603702
14 ORD0793 exp_F mu 0.12670842
15 ORD0795 exp_F mu 0.12982122
16 ORD0795 exp_F mu 0.13648100
17 ORD0795 exp_F mu 0.13593685
18 ORD0799 exp_F mu 0.13906691
continues...
我想像 lm(mu~ORD, data=df)
一样进行线性调整,但是对于每组类型和表达式。我尝试了以下但它不起作用..:[=15=]
intsl <- df %>% group_by(exp,type) %>%
fortify(lm(mu~ORD)) %>%
select(exp,type, .fitted, .resid)
我需要使用 fortify,因为我需要 .fitted 和 .resid 字段稍后使用 ggplot 中包含的 facet_grid
按类型和 exp 对图进行多图排序,以检查每个拟合中是否存在异方差模型..就像但在一个有组织的多图中:
有什么建议吗? :<
ggplot2
包中 fortify()
的文档说该方法将被弃用,应该改用 broom
包。根据信息 here,你应该这样做:
library(dplyr)
library(broom)
intsl <- df %>%
group_by(exp, type) %>%
do(fit = lm(mu ~ ORD, .)
intsl %>% augment(fit)
这应该为您提供数据框,其中包含用于对回归进行分组的变量、回归变量以及每个观察值的额外输出,例如 .fitted
和 .resid
,因此您可以继续直接用 ggplot
绘制它们。
我有这样一个数据框:
ORD exp type mu
1 Combi pH=7 exp_F mu 0.15637365
2 Combi pH=7 exp_F mu 0.12817901
3 Combi pH=7 exp_F mu 0.13392221
4 Combi pH=7 exp_F mu 0.09683254
5 Combi pH=7 exp_F mu 0.11249738
6 Combi pH=7 exp_F mu 0.10878719
7 Combi pH=7 exp_F mu 0.11019295
8 Combi pH=7 exp_F mu 0.12100511
9 Combi pH=7 exp_F mu 0.09803942
10 Combi pH=7 exp_F mu 0.13842086
11 Combi pH=7 exp_F mu 0.12778964
12 ORD0793 exp_F mu 0.13910441
13 ORD0793 exp_F mu 0.12603702
14 ORD0793 exp_F mu 0.12670842
15 ORD0795 exp_F mu 0.12982122
16 ORD0795 exp_F mu 0.13648100
17 ORD0795 exp_F mu 0.13593685
18 ORD0799 exp_F mu 0.13906691
continues...
我想像 lm(mu~ORD, data=df)
一样进行线性调整,但是对于每组类型和表达式。我尝试了以下但它不起作用..:[=15=]
intsl <- df %>% group_by(exp,type) %>%
fortify(lm(mu~ORD)) %>%
select(exp,type, .fitted, .resid)
我需要使用 fortify,因为我需要 .fitted 和 .resid 字段稍后使用 ggplot 中包含的 facet_grid
按类型和 exp 对图进行多图排序,以检查每个拟合中是否存在异方差模型..就像但在一个有组织的多图中:
有什么建议吗? :<
ggplot2
包中 fortify()
的文档说该方法将被弃用,应该改用 broom
包。根据信息 here,你应该这样做:
library(dplyr)
library(broom)
intsl <- df %>%
group_by(exp, type) %>%
do(fit = lm(mu ~ ORD, .)
intsl %>% augment(fit)
这应该为您提供数据框,其中包含用于对回归进行分组的变量、回归变量以及每个观察值的额外输出,例如 .fitted
和 .resid
,因此您可以继续直接用 ggplot
绘制它们。