【发布时间】:2020-08-08 23:27:20
【问题描述】:
我正在尝试制作饼图,第一步是计算每个部分的实际百分比份额。我认为我应该能够使用mutate,但它给了我 100% 的全面支持:
starwars %>%
group_by(gender) %>%
count() %>%
mutate(percent = n / sum(n) * 100)
我希望看到计算出的百分比,如下所示:
gender n percent
female 19 22
hermaphrodite 1 1
male 62 71
none 2 2
NA 3 3
但每一行似乎都是 100%:
gender n percent
female 19 100
hermaphrodite 1 100
male 62 100
none 2 100
NA 3 100
我需要在此处更改什么以便获得 n 总和的百分比?
【问题讨论】:
-
试试base R
with(starwars, prop.table(table(gender, useNA="ifany"))). -
我想通了:我想要的是
starwars %>% count(gender) %>% mutate(percent = n / sum(n) * 100) -
不过,我很想了解其中的区别。