排除类别在箱线图根据样本大小/频率
问题描述:
我有一个大数据库从中我想创建的箱线图:排除类别在箱线图根据样本大小/频率
数据:test.hospital
Y:试验结果(%):1500样品中的总
X1:不同年(2011年至2017年)
X2:不同医院(30个不同医院名称)
样本大小不同医院很多,所以在某些情况下,实际上数据太少无法说明数据。因此,我想排除所有医院从我的boxplot有样本大小< 15.
所以我想要做的是创建一个额外的行频率多少时间医院采样,并使用该行排除我的boxplot的低样本大小..
因为你可能会得到的是,我对R很新,所以对大多数人来说,这是可能的。一个非常简单的问题......但我真的很喜欢它的答案...!
非常感谢哟:)
答
尝试使用dplyr
包。 group_by
有助于区分不同医院,mutate
统计它们,filter
选择至少有15个观察点的医院。 %>%
是加入功能的管道符号。
install.packages(dplyr)
library(dplyr)
test.hospital.filtered <- group_by(test.hospital, x2) %>%
mutate(sampled_count = n()) %>%
filter(sampled_count >= 15)
现在使用ggplot
创建箱型图。年数在x轴上,测试结果在y轴上,显示过滤的医院。
install.packages(ggplot)
library(ggplot)
ggplot(test.hospital.filtered, aes(x = x1, y = y, fill = x2)) +
geom_boxplot()
完美的作品,谢谢! – Lotw