【发布时间】:2017-01-18 22:11:59
【问题描述】:
我是 SAS 的 R 新手。我会在 SAS 中使用全局宏变量来完成此操作,但尚未在 R 中找到方法。我想弄清楚如何使用循环或其他 R 功能,通过替换对象名称(即字符)以及将名称附加到附加文本('.sum')来简化我的代码。如果我从下面的代码开始:
RED.sum <- aggregate(y ~ x, data = RED, FUN = "mean")
ORANGE.sum <- aggregate(y ~ x, data = ORANGE, FUN = "mean")
YELLOW.sum <- aggregate(y ~ x, data = YELLOW, FUN = "mean")
GREEN.sum <- aggregate(y ~ x, data = GREEN, FUN = "mean")
BLUE.sum <- aggregate(y ~ x, data = BLUE, FUN = "mean")
我用什么可以简化为一行通用代码:
w.sum <- aggregate(y ~ x, data = w, FUN = "mean")
并循环遍历数据名称(RED、ORANGE、YELLOW、GREEN、BLUE),将值分配给“w”?
【问题讨论】:
-
将所有 data.frames 放在一个列表中。然后你就可以一步完成了
-
OR
rbind将所有数据帧合并为一个数据,其中一个唯一的 id 列表示它属于哪个数据。然后执行group_by并总结 -
如果您希望我们帮助您,请添加示例数据!
标签: r