答案 0 :(得分:0)
如果您想要一个单元格与其上方的单元格之间的差异,可以使用diff
函数。首先以dataframe
的格式读取数据。
仅查看其工作原理,请尝试diff(c(1, 3))
下面是执行此操作并返回新数据帧的快速方法。
lapply(YourDataFrame, diff) %>%
dplyr::bind_cols()
答案 1 :(得分:0)
由于您不提供样本,所以我们生成一个6x6
样本矩阵
set.seed(2018)
mat <- matrix(sample(36), nrow = 6)
# [,1] [,2] [,3] [,4] [,5] [,6]
#[1,] 13 19 24 21 31 33
#[2,] 17 4 32 28 20 8
#[3,] 3 27 18 5 29 30
#[4,] 7 15 14 9 25 36
#[5,] 16 11 6 34 23 22
#[6,] 10 35 26 2 1 12
我们现在可以使用apply
和MARGIN = 2
来计算每个单元格与其上方单元格的差值
apply(mat, 2, function(x) c(NA, diff(x)))
# [,1] [,2] [,3] [,4] [,5] [,6]
#[1,] NA NA NA NA NA NA
#[2,] 4 -15 8 7 -11 -25
#[3,] -14 23 -14 -23 9 22
#[4,] 4 -12 -4 4 -4 6
#[5,] 9 -4 -8 25 -2 -14
#[6,] -6 24 20 -32 -22 -10