dataframe - 有没有办法在 R 中添加一个新列作为类似值的计数?
问题描述
我试图通过简单地显示基于 R 中两个不同列的条件的原始计数来简化数据框。我正在处理美国最近两次选举的选举数据。首先,我想按州过滤,然后按性别过滤。所以我有这个看起来像这样的数据框:
状态 | 性别 | 投票 | 方法 |
---|---|---|---|
铝 | 男性 | 1 | 1 |
铝 | 男性 | 1 | 99 |
铝 | 女性 | 2 | 1 |
铝 | 男性 | 1 | 1 |
AK | 女性 | 2 | 99 |
AK | 男性 | 1 | 1 |
AK | 女性 | 2 | 99 |
等等五十个州。我想创建新的列来计算每个州的男性和女性。我可以过滤我的数据以显示计数,然后我可以手动输入,但我希望能够将其作为一段平滑的代码运行。我已经根据年份将我的数据框分成两部分,目前,这是我想继续这样做的方式。
#Split election data into two years
election16 <- election %>%
filter(year == 2016)
election20 <- election %>%
filter(year == 2020)
#Filter 2016 data by condition
election16 %>%
filter(state == 'AL' & sex == 'male')
这给了我输出:
# A tibble: 1,262 x 5
year state sex voted method
<dbl> <chr> <chr> <dbl> <dbl>
1 2016 AL male 2 1
2 2016 AL male 1 99
3 2016 AL male 98 99
4 2016 AL male 2 1
5 2016 AL male 1 99
6 2016 AL male 96 99
7 2016 AL male 1 99
8 2016 AL male 96 99
9 2016 AL male 2 1
10 2016 AL male 97 99
# ... with 1,252 more rows
所以我并不坚决反对在阿拉巴马州手动添加一个名为“男性”的新列,该列有 1,262 个,但我确信有一种巧妙的方法可以做到这一点。
解决方案
推荐阅读
- reactjs - Flowtype 在 React+Webpack 设置中给出 SCSS 文件错误
- homebrew - Cask 'thorn-writing' 定义是我没有安装的无效错误
- spring-boot - 如何将公共证书添加到谷歌存储桶
- angular - Angular 年份下拉列表
- mysql - ubuntu 如何将用户更改为“mysql”
- lua - (gLua) 真皮不工作。尝试调用方法“关闭”(零值)
- react-native - React 原生 Flat 列表优化
- mongodb - 用于日期比较的 mongodb 过滤器
- visual-studio-code - VSCode 无法将 SSH 连接到树莓派 4
- kubernetes - kubectl 执行 -it
获取 sh:无法打开“导出”:没有这样的文件或目录