R中的自制距离矩阵

时间:2014-03-10 14:23:17

标签: r matrix distance

我想基于两列代表点ID和一列代表我的“距离”来创建距离矩阵。距离实际上是归一化的最大斜率值,所以基本上我想要在两点之间的最大斜率上的距离矩阵。每个连接都有一行,看起来像这样:

Origin = c(10001,10001,10002,10002,20001,20001)
Destin = c(10002,20001,10001,20001,10001,10002) 

和具有最大斜率值的第三个向量:

maxSlope = c(0.47, 0.12, 0.47, 0.32,0.12,0.32)

现在我希望有一个看起来像这样的表:

NaN   10001 10002 20001
10001 NaN   0.47  0.12
10002 0.47  NaN   0.32
20001 0.12  0.32  NaN

我实际上并不关心“NaN”代替什么价值观。

我对R很新。有没有人有这样做的好方法? 问候, simoet

1 个答案:

答案 0 :(得分:5)

您可以使用xtabs

xtabs(maxSlope~Origin+Destin)
       Destin
Origin  10001 10002 20001
  10001  0.00  0.47  0.12
  10002  0.47  0.00  0.32
  20001  0.12  0.32  0.00