【发布时间】:2019-07-10 12:43:57
【问题描述】:
这是我的数据集:
X Totally.Disagree Disagree Agree Totally.agree
0 2 9 111 122
1 2 30 124 88
2 4 31 119 90
3 10 43 138 53
4 33 54 85 72
5 43 79 89 33
6 48 83 94 19
7 51 98 80 15
8 50 102 75 17
9 51 96 80 17
其中 X(因此每行)是一个问题,值是选择该问题答案的人数。我想计算每个问题的模式(选择最多的答案)。
这是我尝试过的:
df <- gather(df,Answer, count, Totally.Disagree:Totally.agree )
df %>%
group_by(X, Answer) %>%
summarise(sum = count)%>%
summarise(mode = df$Answer[which(df$count== max(df$count))])
但这不起作用,因为max(df$count) 指的是整个数据集,而不仅仅是一个问题。
如果我尝试的方式正确,我现在不这样做。如果你们中的任何一个可以帮助我解决这个问题,我将不胜感激。
【问题讨论】:
标签: r dplyr categorical-data mode