我正在尝试在2016年的选举数据集中创建一个新列,显示候选人是否输了或赢了一个县。
Democrat %>%
group_by(county) %>%
summarise(winningvote = max(fraction_votes))
此代码仅返回最大投票。我还可以返回候选变量吗?添加:
select(county, fraction_votes, candidate)
不会返回任何不同的内容。
我将尝试使用mutate为代码的最后一行创建一个“结果”变量。我认为申请家庭可能是解决这个问题的另一种方式。
由于
答案 0 :(得分:1)
如果candidate
是Democrat
数据框的字段,最简单的方法是进行多次分组:
Democrat %>%
group_by(county, candidate) %>%
summarise(winningvote = max(fraction_votes))
答案 1 :(得分:0)
我非常有信心有一种更简洁的方法可以做到这一点,但是下面会为你提供一个赢得投票标志为1.然后你只需用0替换NA(第二块代码)
left_join(Democrat, (Democrat %>%
group_by(county) %>%
summarise(fraction_votes = max(fraction_votes)) %>%
mutate(Winning_Vote = 1)))
Democrat[is.na(Democrat)] <- 0