我有一个值为c(80,70,50,40, 30)
的列。我需要减去(80-70
)等,如下所示。
下面是列和所需的输出。所需的第一个值是0
,然后是diff值。我在R中尝试这个。
Col 1 Diff
80 0
70 10
50 20
40 10
30 10
答案 0 :(得分:3)
您想要diff
:
c(0, -diff(c(80, 70, 50, 40, 30)))
答案 1 :(得分:0)
x <- c(80,70,50,40,30)
y <- c(100, 120, 30, 20, 10)
df <- data.frame(x, y)
df$x1 <- c(0, abs(diff(x)))
df$y1 <- c(0, abs(diff(y)))
但是,以上只有在值按降序排列时才有效...所以请改用它。
df$x2 <- c(0, 0-(diff(x)))
df$y2 <- c(0, 0-(diff(y)))