我有一个对称但稀疏的 0 和 1 矩阵,表示两个对象之间是否存在边或链接——邻接矩阵。我正在尝试使用 R 中集群包中的命令 PAM,它需要一个相异矩阵(特别是该矩阵的上三角形)或距离。
下面找到一个有代表性的矩阵(尽管我的矩阵有更多的边和节点,并且与这个矩阵不同,实际上是稀疏的)。
0 1 0 0
1 0 0 0
0 0 0 1
0 0 1 0
我需要我的矩阵的上三角版本,这意味着我需要获得这个矩阵。我的问题是我的矩阵至少是奇异的,所以矩阵命令(如常规 LU 分解或 Choleski 分解)不适用于它。
这是我尝试 64 * 64 稀疏矩阵时收到的错误消息:
Warning message:
In .local(x, ...) :
Exact singularity detected during LU decomposition: U[i,i]=0, i=20.
我在这里阅读了关于稀疏矩阵的几篇文章,包括“大稀疏矩阵到三角矩阵 R ”
但他们似乎并没有完全按照我的意愿行事。
我想知道是否有人对我应该尝试获得所需矩阵的 R 命令有什么建议。如有必要,我可以尝试编写自己的功能,但我宁愿不这样做。