如何在 R 中基于两个因子数据创建箱线图?
r programmingserver side programmingprogramming更新于 2025/4/9 20:07:17
要基于两个因子数据创建箱线图,我们可以为其中一个因子创建方面,其中每个方面将包含第二个因子的箱线图。
例如,如果我们有一个名为 df 的数据框,其中包含两个因子列(例如 F1 和 F2)和一个数值列(例如 Num),那么可以使用下面给出的命令 − 创建基于这两个因子的箱线图。
ggplot(df,aes(F1,Num))+geom_boxplot()+facet_wrap(~F2)
示例
以下代码片段创建了一个示例数据框 −
Gender<-sample(c("Male","Score"),20,replace=TRUE) Class<-sample(c("First","Second","Third"),20,replace=TRUE) Score<-sample(1:100,20) df<-data.frame(Gender,Class,Score) df
输出
创建以下数据框 −
Gender Class Score 1 Score First 26 2 Score Second 97 3 Male Third 15 4 Male Second 6 5 Score First 40 6 Score Third 49 7 Male First 60 8 Score Second 41 9 Male Third 82 10 Male First 7 11 Score Third 85 12 Male Second 48 13 Score Third 35 14 Score First 38 15 Score Third 3 16 Male First 51 17 Score Third 37 18 Male First 9 19 Score Third 5 20 Score First 13
要加载 ggplot2 包并为 df 中的数据创建箱线图,请将以下代码添加到上面的代码片段中 −
library(ggplot2) ggplot(df,aes(Class,Score))+geom_boxplot()+facet_wrap(~Gender)
输出
如果将上述所有代码片段作为单个程序执行,则会生成以下输出 −