我的问题与以前的帖子密切相关:compute all pairwise differences within a vector in R
但我对这些元素的差异感兴趣而不是绝对差异,这使得所有建议的解决方案都不可行。
我知道如何使用此命令获得结果:
n <- 4
x <- c(1:4)
combn(x,2, FUN=diff)
但对于我的应用程序来说这太慢了,其中n = 500/1000 / .... 在R
中最有效的方法是什么答案 0 :(得分:5)
您可以使用outer
x <- c(1:4)
outer(x,x, `-`)
[,1] [,2] [,3] [,4]
[1,] 0 -1 -2 -3
[2,] 1 0 -1 -2
[3,] 2 1 0 -1
[4,] 3 2 1 0