我有一个非常大的 csv 文件(因此 R 中的 for 循环需要很长时间)关键字之间的相似性,当我读入 data.frame 时看起来像:
> df
kwd1 kwd2 similarity
a b 1
b a 1
c a 2
a c 2
我想将其转换为 dist 对象,如下所示:
> dObject
a b
b 1
c 2 0
我无法让它工作: 将数据框转换为“dist”类的对象,而无需实际计算 R 中的距离
我的另一个想法是使用 Matrix() 创建一个稀疏矩阵,但我不确定如何有效地填充矩阵,因为我的 csv 相当大 - 也许是一个应用函数?
也许重塑()?
----更新----这似乎适用于上面的玩具数据集: https ://stats.stackexchange.com/questions/6827/efficient-way-to-populate-matrix-in-r
然而,在这个例子中,他们使用了一个矩阵(),但我想使用由于内存原因而稀疏的矩阵()。
--- 此外---- 之前有一个类似的帖子。但是,我认为它的建议不适用于这种情况,在这种情况下,它们不是数据集中每个元素之间的链接 - csv 不包含所有关键字之间的成对相似性,如上一篇文章: 转换到“dist”类对象的数据框,而无需实际计算 R 中的距离