我目前有296个随机数的列数据(所有整数)。我希望将连续值之间的绝对差异作为新列。
(因此,新列将包括| val.2 - val.1 |,| val.3 - val.2 |,| val 4. - val.3 | ...等。)
我会在Python中使用带有追加和新列表的for循环,但似乎我不能在R中做到这一点。在R中我可以用哪些方法做到这一点?谢谢。
答案 0 :(得分:0)
您可以使用diff
和abs
。
dd <- data.frame(x = rpois(20, 10))
dd$diff = c(NA, abs(diff(dd$x)))
> dd
x diff
1 12 NA
2 16 4
3 8 8
4 16 8
5 2 14
6 18 16
7 4 14
8 8 4
9 10 2
10 13 3
11 9 4
12 10 1
13 9 1
14 14 5
15 10 4
16 10 0
17 16 6
18 12 4
19 10 2
20 17 7