基于 R 中第三列中的值,同一列中两行值之间的差异

问题描述 投票:0回答:1

[预期表][1]感谢您查看这篇文章。 尝试根据 R 中的基线访问查找“记录”值之间的差异(对于 Spotfire) 对于 RecordId(10001),记录相对于基线的变化为 4(基线时差异 20,筛选时差异 24),依此类推。

RecordId Record    Visit           Change in Record from Baseline
10001     20       Baseline     
10001     24       Screening     4
10001     20       Visit 4       0
10001     15       Visit 5       5
r difference spotfire
1个回答
0
投票

根据您显示的示例表,这应该可行:

library(dplyr)

your_data |>
  mutate(`Change in record from baseline` = abs(Record - first(Record)))

这假设基线值是每个

RecordId
组中的第一个值。如果不是这种情况,您可以尝试使用
abs(Record - Record[Visit == "Baseline"])
而不是
abs(Record - first(Record))

© www.soinside.com 2019 - 2024. All rights reserved.