[英]How to dplyr::arrange groups within a df by the mean of group measure?
在Kara Woo的https://stackoverflow.com/a/26555424/9350837答案的基础上,我希望通过各个组的摘要度量vizCredPrcnt
对我的分组df进行排序。
到目前为止,这是我的代码,
credData <- ReShapeAdCredSubset %>%
group_by(CredentialQ, year) %>%
summarise(vizCredPrcnt = (sum(credential_wIndiv, na.rm = TRUE) / (sum(credential_wAll, na.rm = TRUE)))) %>%
arrange(CredentialQ, year, desc(mean(vizCredPrcnt)))
这是我得到的错误,
range_impl(.data,点)中的错误:位置3处的尺寸(1)不正确,预期为144
这是我的小标题,是我要排序的分组均值的视觉效果,
分组的小标题安排
很高兴听到您的想法!
我将尝试创建一个由CredentialQ组指定visCredPrcnt变量均值的变量,然后将其通过如下所示的安排调用传递:
credData <- ReShapeAdCredSubset %>%
group_by(CredentialQ, year) %>%
summarise(vizCredPrcnt = (sum(credential_wIndiv, na.rm = TRUE) / (sum(credential_wAll, na.rm = TRUE)))) %>%
ungroup() %>%
group_by(CredentialQ) %>%
summarize(meanVizCredPrcnt = mean(visCredPrcnt, na.rm = T)) %>%
arrange(CredentialQ, year, desc(meanVizCredPrcnt))
非常感谢,尼克! 您的建议,以及尼古拉的https://stackoverflow.com/a/44174523/9350837 ,都使我走上了正确的道路。
我接受了您的两个建议,并为此将它们融合在一起,可以解决问题!
credData <- ReShapeAdCredSubset %>%
group_by(CredentialQ, year) %>%
summarise(vizCredPrcnt = (sum(credential_wIndiv, na.rm = TRUE) / (sum(credential_wAll, na.rm = TRUE))))
credData <- credData %>%
mutate(meanViz = mean(vizCredPrcnt, na.rm = TRUE)) %>%
group_by(CredentialQ) %>%
arrange(desc(meanViz))
再次感谢!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.