gpt4 book ai didi

根据两列的组总和的比率对因子重新排序 - 按要重新排序的因子分组

转载 作者:行者123 更新时间:2023-12-01 10:46:57 24 4
gpt4 key购买 nike

我有一个数据框,df:

  District TypeofSchool Nstudents Nteachers Percent_failure
1 A I 1936 157 21.5
2 A II 67 8 0.5
3 A III 5288 146 78.0
4 B I 653 72 27.8
5 B II 865 22 9.0
6 B III 2278 100 63.2

对于使用 ggplot2 绘图,我想记录地区因素。我想按照该地区的师生比例排序,即将该地区所有类型学校的学生人数和教师人数相加,并取比例;按该比率重新排序区域,以便当我绘制堆积条形图时,最低比率的区域将显示在最左侧的位置:
ggplot(df, aes(x=District, y=Percent_failure, fill=TypeofSchool)) +
geom_bar(stat="identity")

任何建议如何进行重新排序?

最佳答案

基础 R 解决方案(使用 dat 作为您的 data.frame)

stu.tea <- names(sort(by( 
dat[c("Nstudents","Nteachers")],dat["District"],
function(x) do.call("/",as.list(colSums(x)))
)))
#[1] "B" "A"

dat$District <- factor(dat$District,levels=stu.tea)
dat$District
#[1] A A A B B B
#Levels: B A

关于根据两列的组总和的比率对因子重新排序 - 按要重新排序的因子分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25048970/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com