当R中满足A列中的值时,提取B列中的值

当R中满足A列中的值时,提取B列中的值,r,database,dataframe,R,Database,Dataframe,在R中,我想在第二个数据集满足a列的值时创建一个计算,然后从数据集1中取出B列的值 df1 Patient Temperature Heartrate 2894 36.7 80 9801 37.2 78 1110 36.5 98 11650 38.2 102 因此,现在我正在尝试,当患者编号符合/等于df1时。它提取温度或心率,我可以直接在公式中实现它

在R中,我想在第二个数据集满足a列的值时创建一个计算,然后从数据集1中取出B列的值

df1
Patient    Temperature   Heartrate
2894          36.7         80
9801          37.2         78
1110          36.5         98
11650         38.2        102

因此,现在我正在尝试,当患者编号符合/等于df1时。它提取温度或心率,我可以直接在公式中实现它来使用这些数据。df2每周都在变化,所以我想合并不会是一个选项。如果可能的话,我想在自动循环中这样做,因为这是一个相当大的数据集

Temperature/1.75*Temperature/Heartrate
36.5/1.75*36.5/98 

merge
应该可以正常工作:

with(merge(df2, df1, by = "Patient", all.x = TRUE),
     Temperature / 1.75 * Temperature / Heartrate)
您也可以将结果保存在df2中:

df2$MyVal <- with(merge(df2, df1, by = "Patient", all.x = TRUE),
     Temperature / 1.75 * Temperature / Heartrate)

df2$MyVal您的第二个数据集列是
character
或“factor”?目前它被作为字符放在第二个数据集列中感谢您的回答和帮助这帮助了我继续我的项目
df2$MyVal <- with(merge(df2, df1, by = "Patient", all.x = TRUE),
     Temperature / 1.75 * Temperature / Heartrate)