在R中跨多个数据帧的类似SQL的查询

在R中跨多个数据帧的类似SQL的查询,r,R,我已经有了这个设置并在Access DB中运行,但是我很难将它转换为R 数据帧A: ID, B1, B2, B3, group 1, 0.2, 0.4, 1000, red ... 4447, 0.4, 0.32, 800, blue 数据帧B(数据帧A中的列的平均值,基于列“组”: 还有第三个Dataframe C,它是Dataframe a中列的标准偏差,同样基于列“group” 我有一个方程式(此处简化),我想为数据帧A的每一行计算,但它需要来自数据帧B中关联条目的输入,如下所示: Fu

我已经有了这个设置并在Access DB中运行,但是我很难将它转换为R

数据帧A:

ID, B1, B2, B3, group
1, 0.2, 0.4, 1000, red
...
4447, 0.4, 0.32, 800, blue
数据帧B(数据帧A中的列的平均值,基于列“组”:

还有第三个Dataframe C,它是Dataframe a中列的标准偏差,同样基于列“group”

我有一个方程式(此处简化),我想为数据帧A的每一行计算,但它需要来自数据帧B中关联条目的输入,如下所示:

FuncZ <- function(a, b, c) {(((a - b)/c)^2)}
FuncZ1)由
组合并

BigDataFrame <- merge(DataFrameA, DataFrameB, DataFrameC, by="group")

我真的很困惑标准差怎么会是“红色”的。大概颜色代表一个键,三个数据帧在这个键上链接。。。?可能是一个
合并
,然后使用一个匿名函数应用
,该匿名函数对每行的每一部分执行向量化算法。如果这听起来含糊不清,那是因为你的问题含糊不清。你是一次只做一行,还是有某种方式将一行a与一行B&C匹配?@SeñorO-数据框a中一次一行,是的,颜色(红色、蓝色等)代表我总结的类。因此,在数据帧A的第1行中,它将使用数据帧B中的“红色”行。以前从未听说过/使用过“with”。谢谢!嗯…需要做一些额外的工作来合并2个以上的数据帧,我想。。。?
BigDataFrame <- merge(DataFrameA, DataFrameB, DataFrameC, by="group")
with(BigDataFrame, (((a - b)/c)^2))