gpt4 book ai didi

r - 如何分组制作频率条形图?

转载 作者:行者123 更新时间:2023-12-04 10:48:19 24 4
gpt4 key购买 nike

假设我的数据是两列,一列是“Condition”,一列是“Stars”

food <- data.frame(Condition = c("A", "B", "A", "B", "A"), Stars=c('good','meh','meh','meh','good'))

如何制作按“条件”分组的“星”频率的条形图?

我读了 here但想扩大该答案以包括团体。

现在我有
q <- ggplot(food, aes(x=Stars))
q + geom_bar(aes(y=..count../sum(..count..)))

enter image description here
但那是完整数据集的比例。

如何制作由“条件”分组的四个条形图?

例如。 “条件 A”的“好”为 0.66,“Meh”为 0.33

最佳答案

我想这就是你要找的:

food <- data.frame(Condition = c("A", "B", "A", "B", "A"), Stars=c('good','meh','meh','meh','good'))
library(ggplot2)
library(dplyr)
data <- food %>% group_by(Stars,Condition) %>% summarize(n=n()) %>% mutate(freq=n/sum(n))

ggplot(data, aes(x=Stars, fill = Condition, group = Condition)) + geom_bar(aes(y=freq), stat="identity", position = "dodge")

enter image description here

起初,我使用 dplyr 计算了频率包,在 geom_bar() 中用作 y 参数.然后我用了 fill=Condition参数在 ggplot()根据条件划分条形。另外我设置了 position="dodge"让酒吧彼此相邻和 stat="identity" ,由于已经计算的频率。

关于r - 如何分组制作频率条形图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45710397/

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