关于在 R 中使用 ggplot2 的两个因素的箱线图

机器算法验证 r 箱形图 ggplot2
2022-03-02 02:45:43

我对 R 和 R 中的任何包都很陌生。我查看了 ggplot2 文档但找不到这个。boxthis我想要一个关于两个因素f1的变量箱线图f2也就是说,假设f1f2都是因子变量,并且它们中的每一个都取两个值并且boxthis是连续变量。我想在图表上获得 4 个箱线图,每个箱线图对应于可能的组合中的一个组合,f1并且f2可以采用。我认为使用 R 中的基本功能,这可以通过

> boxplot(boxthis ~ f1 * f2 , data = datasetname) 

提前感谢您的帮助。

2个回答

我可以想到两种方法来实现这一点:

1.创建-function的f1f2外部的所有组合ggplot

library(ggplot2)

df <- data.frame(f1=factor(rbinom(100, 1, 0.45), label=c("m","w")), 
                 f2=factor(rbinom(100, 1, 0.45), label=c("young","old")),
                 boxthis=rnorm(100))

df$f1f2 <- interaction(df$f1, df$f2)

ggplot(aes(y = boxthis, x = f1f2), data = df) + geom_boxplot()

在此处输入图像描述

2.使用颜色/填充/等。

ggplot(aes(y = boxthis, x = f2, fill = f1), data = df) + geom_boxplot()

在此处输入图像描述

这是另一种方式:

ggplot(datasetname) + boxplot(aes(x=as.factor(f1),y=boxthis)) + facet_wrap(~as.factor(f2), nrow=5)

给出如下内容:

分面箱线图