我想在 r 中制作一个箱线图,但我很难将箱线图按第三个变量分组。
我想在一个 y 轴上绘制箱线图(治疗结果问卷的分数),称为 HAMD))-
第 0-5 周(称为周)
两个治疗组全部两次(称为治疗)。
我做了两个箱线图
箱线图(MP$HAMD ~ MP$week)
和六个
箱线图(MP$HAMD ~ MP$Treatment)
但现在我想要 12 个箱线图,每个治疗每周一次。我怎么能在 r 中做到这一点?
无论如何,非常感谢你。
您可以使用interaction
函数和基本图形执行此操作:
boxplot( HAMD ~ interaction(treatment,week), data=MP )
boxplot( HAMD ~ interaction(week,treatment), data=MP )
boxplot( HAMD ~ interaction(week,treatment), data=MP,
at= c(1:6, 8:13) )
这是使用 lattice 包的一种选择:
library(lattice)
bwplot( HAMD ~ week|treatment, data=MP )
bwplot( HAMD ~ treatment|week, data=MP )
bwplot( HAMD ~ treatment|week, data=MP, layout=c(6,1) )
还有一个使用 ggplot2 包的选项:
library(ggplot2)
p <- qplot(interaction(treatment,week), HAMD, data=MP, geom="boxplot")
p
p + aes(fill=week)