我正在使用tf_idf值来确定网页之间的相似度。目前我有我的tf_idf矩阵,由于有很多关键词但只有36个文档,所以该矩阵不是方阵。我想将该矩阵转换为图形对象,以便我可以对其进行单模投影。
因此,我使用了以下代码:
我有一个类似于以下内容的矩阵,其中x、y、z是关键词,A、B是网页:
因此,我使用了以下代码:
ig <- graph.adjacency(tf_idf,mode="undirected",weighted=TRUE)
我希望这个图形是加权的,即它的tf_idf值。但是,当我执行此操作时,会出现错误:
Error in graph.adjacency.dense(adjmatrix, mode = mode, weighted = weighted, : not a square matrix
请问你能帮我决定下一步该怎么做吗?我有一个类似于以下内容的矩阵,其中x、y、z是关键词,A、B是网页:
mat = matrix(c(0.1, 0.5, 0.9, 0.4, 0.3, 0.5), nc=3,
dimnames=list(c("A", "B"), c("x", "y", "z")),
byrow=TRUE)
x y z
A 0.1 0.5 0.9
B 0.4 0.3 0.5
tf_idf
不是邻接矩阵。因此,您试图做什么并不清楚。 - John Colemantf_idf
是邻接矩阵的一部分。你可以将其扩展为完整的矩阵。 - John Colemangraph_from_incidence_matrix
的函数,它可能会有所帮助,尽管您的输入有点不清楚(至少对我来说是这样)-您能否分享一下您数据的一个小例子?或者也许您想要取矩阵的交叉积(对于常见单词),使其成为方阵或其他操作吗? - user20650