首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R用不同运算符在多列上聚合数据帧的行

R用不同运算符在多列上聚合数据帧的行
EN

Stack Overflow用户
提问于 2016-03-19 10:32:50
回答 2查看 801关注 0票数 0

假设我有以下数据框架

代码语言:javascript
复制
ID   A    B    C
1    10   10   10
1    20   5    15
1    30   0    12
2    10   5    13
2    0    10   10
...

我想通过I聚合框架,但将mean()应用于A,将min()应用于B,将max()应用于C。

导致这个

代码语言:javascript
复制
ID   A    B    C
1    20   0    15
2    5    5    13
...

我如何有效地做到这一点(我有一个非常大的数据框架)?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-19 12:46:40

data.table方法,

代码语言:javascript
复制
Library("data.table")
Table1 <- data.table(df)
Table1[, list(A = mean(A), B = min(B), C = max(C)), by = "ID"]
#   ID  A B  C
#1:  1 20 0 15
#2:  2  5 5 13
票数 1
EN

Stack Overflow用户

发布于 2016-03-19 11:04:27

使用dplyr包。假设您的数据框架名称是“数据”:

代码语言:javascript
复制
library(dplyr)
t1 <- summarize(group_by(data,ID), A=mean(A), B=min(B), C=max(C) )
t1 <- as.data.frame(t1)
t1

产出:

代码语言:javascript
复制
  ID  A B  C
1  1 20 0 15
2  2  5 5 13
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36100581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档