如何解决同一列中的数学运算,按 R 中的组和条件
我想计算胜利的差距。我上传了我的数据集的一个例子,其中有三个城市,两年,如果候选人在该市的选举中获得选举(1 =是,0 =否),他或她收到的选票的份额,以及胜利的边缘。
差额将通过计算获胜者候选人和失败者获得的选票份额的差异来给出。我不知道如何在 R 中做到这一点。
city year elected votes_share margin
<chr> <dbl> <dbl> <dbl> <dbl>
A 1 1 50 40
B 1 1 60 40
C 1 1 70 40
A 1 0 10 -50
B 1 0 20 -50
C 1 0 30 -50
A 2 1 60 40
B 2 1 70 40
C 2 1 80 60
A 2 0 20 20
B 2 0 30 30
C 2 0 20 20
解决方法
我们可以使用
library(dplyr)
df1 %>%
group_by(city,year) %>%
mutate(margin2 = sum(vote_share[elected == 1]) - sum(vote_share[elected == 0]))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。