【发布时间】:2020-10-22 07:40:34
【问题描述】:
您好,我有一个数据表(包含名称和值)、一个引用表和一个限制表,我想在数据表中创建一个新列,将实际行的值与匹配名称的参考值和相应列的限制。以下是一些示例数据,以使其更清晰:
参考表
> refTable
name value1 value2
1 aa 1.2 0.4
2 bb 3.4 2.3
3 cc 2.1 1.1
限制表
> limits
value1 value2
1 2.1 1.8
数据表
> dataTable
name value1 value2
1 aa 1.0 1.4
2 aa 2.4 2.1
3 cc 2.6 1.8
4 bb 2.2 2.4
5 aa 3.4 3.0
6 cc 2.9 0.8
最后,我想在数据表中添加新列(如 value1_pass 和 value2_pass),其计算方式如下:
value1_pass = ((matching name's value1 in reference table) - (value1 of data table)) < (limit of value1)
我正在使用 dplyr 和 data.frames,我试图为此使用 mutate,但我不知道如何在 mutate 方程中使用参考值和限制值。这样做的正确方法是什么? (理想情况下,我只想拥有/创建结果列,但如果这样更容易,我不介意将新列复制到具有匹配参考值的数据表中)
【问题讨论】: