我有一个缺少一些值的数据集,我想找出每个组的Ecoli超过500,200,Ecoli中位数和第95个百分位数的百分比超出百分比?
Site Ecoli
A 234
A 450
A 500
A 1096
A 295
A 4567
A 2344
A 234
A 450
B 500
B 1096
B 295
B 4567
B 2344
B
B
B
B
我从此代码开始
table=dat %>% group_by(Site) %>% mutate(E.Coli>500)
答案 0 :(得分:0)
按“站点”分组后,我们可以在逻辑条件上使用mean
将其转换为百分比。如果要创建列,请在mutate
summarise
而不是group_by
library(dplyr)
dat %>%
group_by(Site) %>%
summarise(PercExeedover500 = 100 *mean(E.Coli > 500, na.rm = TRUE),
PercExeedover200 = 100 *mean(E.Coli > 200, na.rm = TRUE),
Quantile95th = quantile(Ecoli, prob = .95, na.rm = TRUE))