r - 当列中的值在R中相同时如何合并数据框中的行
问题描述
我有许多来自同一个单元的观察结果,我需要合并这些行。所以像这样的数据框
data.frame(
fir =c("001","006","001", "006", "062"),
sec = c(10,5,6,7,8),
thd = c(45,67,84,54,23))
fir sec thd
001 10 45
006 5 67
001 6 84
006 7 54
062 8 23
第一列有一个代表一个单位的 3 位数字。我需要将这些行加在一起以获得每个单元的总数。其他列是需要相加的数值。所以数据框看起来像,
fir sec thd
001 16 129
006 12 121
062 8 23
我需要它适用于第一列中的任何唯一数字。有任何想法吗?感谢您的任何帮助!
解决方案
欢迎这是分组操作的经典案例,我们可以按组对您的逻辑进行分组,在这种情况下,我们需要 sec 和 thd 列的总和。
library(tidyverse)
df <- data.frame(
fir =c("001","006","001", "006", "062"),
sec = c(10,5,6,7,8),
thd = c(45,67,84,54,23))
df %>%
group_by(fir) %>%
summarise(sec_sum = sum(sec),
thd_sum = sum(thd))
推荐阅读
- html - 如何使用 node.js 写入 HTML 文件的特定部分
- r - 使用 R markdown 中的 flextable R 包并排对齐多个表格
- php - 将 php 从 5.6 升级到 7.4 后,项目 symfony 2.8 中的 AppKernel.php 出现问题
- c++ - 无法在内核模块中打开线程
- php - 让我的服务器从注册用户的电子邮件中发送邮件是不可能的吗?
- django - 在 Amazon Elastic Beanstalk 上部署 Django
- wordpress - 上一个和下一个链接不适用于自定义帖子类型 Worpdress
- ruby-on-rails - Microsoft Graph API - 仅访问特定事件的选项
- spring-boot - 如何测试会话方法?
- javascript - 如何在不访问令牌消费者的情况下动态更改注入令牌值 - Angular