我有一个 18528 行和 3 列的数据框,如下所示:
Sample Target Value
100 A 21.5
100 A 20.5
100 B 19.5
100 B 19.75
100 B 18.15
100 B 21.95
200 A 21.1
200 A 21.6
200 B 23.5
200 B 20.75
100 C 21.25
100 C 22.0
100 C 18.33
100 C 21.84
我需要计算每组中值之间的差异:
Sample Target Value dif
100 A 21.5 1
100 A 20.5 1
100 B 19.5 0.25
100 B 19.75 1.6
100 B 18.15 3.8
100 B 21.95 2.45
200 A 21.1 0.5
200 A 21.6 0.5
200 B 23.5 2.75
200 B 20.75 2.75
100 C 21.25 0.75
100 C 22.0 3.67
100 C 18.33 3.51
100 C 21.84 0.59
然后,如果差异大于 2,则将该值设为“NA”,如:
Sample Target Value dif
100 A 21.5 1
100 A 20.5 1
100 B 19.5 0.25
100 B 19.75 1.6
100 B 18.15 3.8
100 B NA 2.45
200 A 21.1 0.5
200 A 21.6 0.5
200 B NA 2.75
200 B NA 2.75
100 C 21.25 0.75
100 C 22.0 3.67
100 C NA 3.51
100 C 21.84 0.59
我用combn来计算差异,但我得到了错误,我认为原因可能是组(2和4)中的长度不同。提前致谢