gpt4 book ai didi

r - 如何在不明确命名的情况下按测量变量的总和进行分组?

转载 作者:行者123 更新时间:2023-12-04 01:06:48 25 4
gpt4 key购买 nike

我想编写一个函数来分析一个数据集,我需要对每个识别变量组合进行聚合/分组/拆分。不幸的是,测量变量很多,经常改变和枚举它们会导致输入中的脆弱代码和错误。

dat <- data.frame(id.a=c('aa','bb','aa','bb'),id.b=c('x','y','x','x'),m.c=c(1:4),m.d=c(5:8)) 
id.vars <- c('id.a', 'id.b')
measure.vars <- setdiff(names(dat),id.vars)

我想总结一下我的测量变量。我找到了方法,但它们都很老套。结果将是

id.a id.b m.c m.d
1 aa x 4 12
2 bb y 2 6
3 bb x 4 8

我认为 reshape2 或 ddply 可能是一个解决方案。

最佳答案

使用您提供的代码:

dat <- data.frame(id.a=c('aa','bb','aa','bb'),id.b=c('x','y','x','x'),m.c=c(1:4),m.d=c(5:8)) 
id.vars <- c('id.a', 'id.b')
measure.vars <- setdiff(names(dat),id.vars)

然后运行:

aggregate(dat[measure.vars],dat[id.vars],sum)

产生:

  id.a id.b m.c m.d
1 aa x 4 12
2 bb x 4 8
3 bb y 2 6

关于r - 如何在不明确命名的情况下按测量变量的总和进行分组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10037823/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com