我的问题与先前的帖子非常相关:计算R中向量中的所有成对差异
但是我对这些元素的差异而不是绝对差异很感兴趣,这使得所有建议的解决方案都不可行。
我知道如何使用此命令获得结果:
n <- 4
x <- c(1:4)
combn(x,2, FUN=diff)
Run Code Online (Sandbox Code Playgroud)
但这对于我的n = 500/1000 / ...的应用程序来说太慢了。在R中执行此操作的最有效方法是什么
说我有一个矢量:
v <- c(11, 21, 32, 55)
Run Code Online (Sandbox Code Playgroud)
现在我想计算一个矩阵diffmat,它包含v的所有元素之间的差异
所以相当于:
11 21 32 55
11 0 10 21 44
21 -10 0 11 34
32 -21 -11 0 23
55 -44 -34 -23 0
Run Code Online (Sandbox Code Playgroud) r ×2