【发布时间】:2016-11-12 15:34:51
【问题描述】:
我正在尝试对“User-Item-Rating”数据运行协作过滤 (CF) 算法。我的数据采用长格式,即每一行都有用户对特定项目评分的数据。我需要将其转换为“用户项”矩阵,然后才能对其应用 CF 算法。
我正在使用tidyr 包中的spread 函数来执行此任务。但鉴于我有超过 50k 的独特项目,生成的数据框将是巨大的。 R 无法执行此操作(在我的本地计算机上)并抛出“无法分配大小向量”错误。
解决这个问题的最佳方法是什么?我尝试探索的一些选项,但无法让它们发挥作用:
- 我在想是否有办法将传播调用的输出作为稀疏矩阵返回
- 我还尝试探索实现 CF 的包(例如
recommenderlab)是否可以选择处理此问题。但我看不到任何选项。
任何帮助将不胜感激。
谢谢!
【问题讨论】:
-
要快速获得更多关于 R 问题的答案,最好添加一点 reproducible example。将鼠标悬停在帖子下方的 R 标签上...
标签: r tidyr collaborative-filtering