我是R新手,因此,如果我的问题太基础或违反了论坛规则,我深表歉意。
我有2列的数据。第二列包含性别(女性1和男性2)。 “ a”列(第一列)包含对问题的答案,范围为(0,1,2,3,4)。
如何获得按性别分组的答案数量的条形图。我可以在excel中执行此操作,但无法在R中执行此操作。首先,我无法将数据转换为可用于绘图的数据。我尝试过dplyr等。
a Sex
1 1
0 2
4 1
2 2
0 1
1 1
2 1
3 1
3 1
2 1
4 2
4 1
2 1
1 2
0 1
2 2
3 1
0 1
4 1
2 1
0 1
1 1
2 2
2 1
1 2
1 2
1 1
0 1
1 1
3
0 1
3 1
4 1
2 2
0 1
1 1
1 2
0 1
3 1
3 1
2 1
1 1
1 1
0 1
0 2
4 1
0 2
0 2
0 2
2 1
2 1
0 2
1 1
4 1
0 1
2 1
0 2
1 2
2 2
0 1
0 1
1 1
1 1
2 2
1 1
0 1
0 2
1 2
0 1
0 1
3 1
0 1
0 2
1 2
0 2
0 1
2
4 2
0 1
1 1
2 2
1 1
4 2
1 1
4 2
0 1
4 2
0 1
2 2
2 1
4 1
2 2
1 1
1 1
2 1
2 1
1 1
3 2
1 1
1 1
2 1
0 2
3 2
2 1
0 1
1 2
2 2
0 2
3 2
2 1
0 1
1 1
1 2
1 1
1 1
0 2
1
0 1
2 1
3 1
0 2
2 1
2 1
0 2
2 1
0 1
0 1
4 1
2 1
2 1
2 1
3 2
2 2
3 1
1 1
2 2
1 1
0 2
2 1
1 2
1 2
0 1
1 2
0 1
2 1
2 1
1 1
2 2
1 1
0 2
2 1
1 1
2 1
2 1
4 2
1 1
0 1
0 1
3 1
3 1
2 1
0 1
1 1
1 1
1 1
2 1
1 1
2 1
2 1
2 1
1 2
2 1
2 1
3 1
0 1
1 2
2 2
1 1
2 1
0 2
0 1
2 1
0 1
0 1
0 1
3 2
2 2
1 2
1 1
1 1
4 1
3 2
2 1
3 1
0 1
1 2
0 1
3
2 2
1 1
3 2
1 2
1 1
2 2
2 2
1 2
0 1
2 2
1 1
2 2
0 2
2 2
0 1
0 1
3 2
3 2
1 3
2 1
0 1
1 2
2 1
2 2
4 2
2 2
2 1
0 2
1 2
1 1
0 2
3 1
3 1
2 1
2 1
2 2
1 1
0 1
2 1
0 1
4 1
0 2
0 1
3 1
1 2
0 1
0 1
0 2
2 1
2 2
1 2
2 1
4 1
2 2
2 1
2 1
1 2
3 1
0 1
1 1
1 1
4 1
0 2
3
0
0 2
2 1
3 2
1 2
1 2
1 2
0 1
1 2
0 1
3 1
3 2
3 1
0 1
0 1
2 1
1 1
1 1
1 1
2 1
3 1
3 1
2 2
3 1
1 2
1 1
我正在尝试实现的输出:
答案 0 :(得分:1)
应该让您入门:
library(tidyverse)
df %>%
count(Sex = ifelse(Sex == 1, "Female", "Male"), a) %>%
ggplot(aes(x = a, y = n, fill = Sex)) +
geom_bar(stat = 'identity', position = "dodge") +
coord_flip()