我有一个大的,稀疏的二进制矩阵(大约39,000 x 14,000;大多数行只有一个"1"条目).我想将类似的行聚集在一起,但我的初始计划需要很长时间才能完成:
d <- dist(inputMatrix, method="binary")
hc <- hclust(d, method="complete")
Run Code Online (Sandbox Code Playgroud)
第一步没有完成,所以我不确定第二步将如何进行.有哪些方法可以有效地对R中大型稀疏二进制矩阵的相似行进行分组?
我试图从二进制矩阵中删除"单身人士".这里,单例指的是行中唯一的"1"值和它们出现的列.例如,给定以下矩阵:
> matrix(c(0,1,0,1,0,0,1,0,0,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,1,0,0,0,0,1,0,0,0,0,0,1,1), nrow=6)
[,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,] 0 1 0 0 0 0 0
[2,] 1 0 1 0 0 0 0
[3,] 0 0 0 1 0 0 0
[4,] 1 1 0 0 0 0 0
[5,] 0 0 0 0 1 1 1
[6,] 0 0 0 0 1 0 1
Run Code Online (Sandbox Code Playgroud)
...我想删除第3行(如果可能的话,第4列的全部),因为[3,4]中的1是该行/列组合中的唯一1.[1,2]很好,因为列[,2]中还有其他1个; 类似地,[2,3]很好,因为行[2,]中还有其他1个.任何帮助将不胜感激 - 谢谢!