我有以下数据框:
ID Measurement A Measurement B Date of Measurements A and B Date of Measurement C
1 23 24 12 16
1 22 23 12 15
1 24 22 12 17
1 21 20 12 11
1 27 29 12 17
这是使用 1 个标识符 (ID) 的示例,实际上我有数千个。
我想创建一个封装的变量
“如果此 ID 的测量 A 或测量 B > xxx,在测量 C 的日期之前,超过两次,则在名为 new_var 的新列中将它们指定为 1”。
到目前为止,我删除了所有测量日期 A 和 B > 测量日期 C
measurements <- subset(measurements, dateofmeasurementsAandB < dateofmeasurementC)
然后在 ifelse 语句中添加截止
measurements$new_var<- ifelse(measurements$measurementA >= xxx | measurements$measurementB >= xxx, 1, 0)
但不能考虑“多于一个场合”(从示例中可以看出,每个 ID 都有多个行/场合)
任何帮助都会很棒,特别是如果它可以做得更简单!