假设我有一个矩阵
data<-matrix(seq(1,6),ncol=2,nrow=3,byrow=TRUE)
A B
[1,] 1 2
[2,] 3 4
[3,] 5 6
从“A”列开始,我想创建“A”中每个数字与“A”中每个其他数字之间的成对差异向量。有效:
c(1-1, 1-3, 1-5, 3-1, 3-3, 3-5, 5-1, 5-3, 5-5)
然后我需要对第二列做同样的事情,依此类推。最终我需要将这些向量绑定到一个新的差异矩阵中。
我觉得这应该可以通过 apply 函数或者 swing() 来实现,但我就是无法将其组合在一起。
感谢您的帮助!
附言。如果答案涉及编写一个函数或一个 for 循环,您能给我一个虚拟中等水平的解释吗?我是第一次学习编码,但我仍然无法理解 for 循环,而且我仍然在为编写自己的函数的逻辑而苦苦挣扎。