r - 稀疏矩阵作为 R 中层次聚类的输入

标签 r sparse-matrix

我有一个关于使用距离矩阵聚类但稀疏的问题。

是否有一种不扩展矩阵并且可以与稀疏表示一起使用的稀疏距离对象格式?

目前我正在做以下事情

# read sparse matrix
sparse <- readMM('sparse-matrix')
distance <- as.dist(sparse)

稀疏矩阵已经是正确的距离矩阵,对于未连接的条目具有 NA。

>sparse
[1,] . . .
[2,] 1 . .
[3,] 1 . .

> as.dist(sparse)
1 2
2 1  
3 1 0

但是用 as.dist 转换它失败了

Error in asMethod(object) : negative length vectors are not allowed

大概是因为它把矩阵展开成一个完整的形式。矩阵 (NxN) 大小为 N = 49281 例如 hclust 方法需要这种格式(dist 对象)

没有任何答案的类似问题on the R help list

最佳答案

距离矩阵如何稀疏?每两个物体之间都有一个距离,所以它实际上是一个非常密集的矩阵。然而,三角矩阵足以描述相互距离(如 D = D')。 dist 生成的对象实际上就是这种情况。

如果距离矩阵是稀疏的,因为很多对象都是相同的,那么您可能只想计算唯一对象的距离矩阵。

关于r - 稀疏矩阵作为 R 中层次聚类的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15911022/

相关文章:

r - 从 Postgres DB 对 dplyr 中的时间序列数据进行下采样

r - 制作数据框或排名调整后的 R 平方 - R

r - 获取 R 中稀疏矩阵的上三角非零元素

python - 是否有用于非标准类代数对象的稀疏矩阵运算的Python库?

r - 更新条件值的变量

r - ggplot 的 geom_text() 饼图标签隐藏了 geom_bar() 制作的饼图

r - 在 SparkR 中使用 CRAN 包

python - 将 Pandas DataFrame 转换为 LIBFM 格式的 txt 文件

sparse-matrix - 如何检查域是否包含 Chapel 中的元素

python - 将大型 csv 转换为稀疏矩阵以在 sklearn 中使用