r - 按另一个因子中的类别计算因子变量中每个类别的比率
问题描述
这里有两列,都是因子变量。第一个是囚犯的种族,第二个是他们是否再犯。我想按种族绘制累犯率。我应该如何实现这一目标?
我试过这个:
df %>%
group_by(race, Recidivated) %>%
summarize(count = n()) %>%
arrange (-count) %>%
ggplot(aes(reorder(race, count, FUN = max),
count, fill = race)) +
geom_col() +
coord_flip() +
scale_fill_manual(values=palette_9_colors) +
theme(legend.position = "none") +
labs(x = "Charge", y = "Count",
title="Recidivism by Rates",
subtitle= "Broward County - Source: Propublica",
caption="UrbanSpatialAnalysis.com") +
plotTheme()
结果是计算每场比赛数量的直方图。我怎样才能得到一个按种族可视化累犯率的图?谢谢!!!
以下是部分数据!
> head(df)
sex age age_cat race priors_count two_year_recid
1 Male 69 Greater than 45 Other 0 0
2 Male 34 25 - 45 African-American 0 1
3 Male 24 Less than 25 African-American 4 1
4 Male 44 25 - 45 Other 0 0
5 Male 41 25 - 45 Caucasian 14 1
6 Male 43 25 - 45 Other 3 0
r_charge_desc c_charge_desc
1 Aggravated Assault w/Firearm
2 Felony Battery (Dom Strang) Felony Battery w/Prior Convict
3 Driving Under The Influence Possession of Cocaine
4 Battery
5 Poss of Firearm by Convic Felo Possession Burglary Tools
6 arrest case no charge
c_charge_degree r_charge_degree juv_other_count length_of_stay
1 F 0 1
2 F (F3) 0 10
3 F (M1) 1 1
4 M 0 1
5 F (F2) 0 6
6 F 0 1
Recidivated
1 notRecidivate
2 Recidivate
3 Recidivate
4 notRecidivate
5 Recidivate
6 notRecidivate
解决方案
race <- sample(c("A", "B", "C", "D"), size = 100, replace = T)
recidivated <- sample(c(TRUE, FALSE), size = 100, replace = T)
df <- data.frame(race, recidivated)
df %>% group_by(race) %>% summarize(recidRate = mean(recidivated)) %>% ggplot(aes(race, recidRate)) + geom_bar(stat = "identity")
如果 Recidivated 是逻辑变量,则应使用 TRUE 或 FALSE,对于逻辑,mean() 是 TRUE 的比例。
希望这可以帮助 :)
推荐阅读
- javascript - ajax加载所有DOM元素后如何加载函数
- amazon-redshift - 红移中的连接比联合快吗?如何让我的查询更快?
- ms-access - CodeModule.ReplaceLine 导致访问崩溃
- java - 是否可以在春季批处理中结合分区和并行步骤?
- ruby - 合并三个哈希并得到这个结果哈希
- java - 默认情况下,我的 Web 应用程序不会从 http 路由到 https
- node.js - express中间件中的异步函数
- python - 创建具有连续整数但忽略特定数字的 numpy 数组的最快方法
- go - 为什么在 bson.Marshal 和 bson.Unmarshal 之后 time.Time 不相等?
- java - 如何使用户可以替换他们键入的句子可以在 Java 中替换