r - Dplyr 相当于 SUM over PARTITION BY
问题描述
我敢肯定这个问题以前被问过,但我找不到答案。
这是我的数据:
df <- data.frame(group=c("a","a","a","b","b","c"), value=c(1,2,3,4,5,7))
df
#> group value
#> 1 a 1
#> 2 a 2
#> 3 a 3
#> 4 b 4
#> 5 b 5
#> 6 c 7
我想要第三列,其中包含每个“组”的“价值”总和,如下所示:
#> group value group_sum
#> 1 a 1 6
#> 2 a 2 6
#> 3 a 3 6
#> 4 b 4 9
#> 5 b 5 9
#> 6 c 7 7
我怎样才能用 dplyr 做到这一点?
解决方案
使用 dplyr -
df %>%
group_by(group) %>%
mutate(group_sum = sum(value))
推荐阅读
- c# - 如何在词位上拆分字符串?
- java - 注销后,我可以单击浏览器返回按钮返回站点
- python - python - 如何在python中创建一个如果引发异常则通过的测试用例?
- visual-studio-code - 为什么 VS Code 中的 LiveServer 扩展无法打开正确的 HTML?
- javascript - React Context 导致了大量的重绘。这真的是个大问题吗?
- laravel - Laravel 使用时出现 405 错误
这是我在 Laravel 遇到过的最奇怪的行为。所以,我有一个简单的表单,带有这样的 textarea 输入:
{!! Form::open(['method' => 'post', 'route' => $route, 'class' => 'form-horizontal', 'enctype' => 'multipart/form-data']) !!} <d
- mysql - 在python中创建数据库时遇到问题
- html - 视频未显示 - 在此媒体中找不到兼容的来源
- javascript - 未捕获的 ReferenceError:未定义 pg
- indexing - 琐碎追逐游戏空间索引