我试图创建一个基本循环,但我很难在线查找信息。
我想要做的就是使用循环而不是对我的数据进行子集化,并为每个数据重复相同的命令。
例如:
我有一个数据集(animals
)正在查看不同的animal.type
(狗,马,猫,老鼠),我将它们分成coat
颜色(黑色,红色,棕色,白色)并将weights
带到不同的ages
。我有一系列命令,例如将数据更改为线性分组模型(lmer),查看数据,执行anova,查看摘要数据,检查模型假设等等。我只想一次对一种animal.type
进行统计。我不想将dogs
或horses
子集化并反复重复相同的公式,而是制作一个循环,为每个animal.type
重复相同的统计。
最简单的方法是什么?
我希望它会像...
loop? <- function(animals$animal.type){
ggplot() #view data
lmer1 <- lmer(weight~coat*age) #Create linear model
anova(lmer1) #look for main patterns
summary(lmer1) #model coefficients
lmerTest::lsmeans(lmer1,test.effs="coat:age") #check model assumptions
plot(lmer1)}
我知道这不对,但我确定答案就在那里......我无法找到答案。
答案 0 :(得分:0)
像
这样的东西for (atype in unique(animals$animal.type)) {
dd <- subset(animals,animal.type==atype)
ggplot(dd,...)
lmer1 <- lmer(weight~coat*age + (1|something), data=dd)
anova(lmer1)
summary(lmer1)
lmerTest::lsmeans(lmer1,test.effs="coat:age")
plot(lmer1)
}