r - 计算给定单词概率、数千个主题和数百万条推文的主题频率
问题描述
我有基本上看起来像这样的推文数据
userID <- c("1","2","2")
text <- c("cat dog", "this is a fish tweet", "this tweet contains a topic")
testDF <- data.frame(userID, text)
我有一个包含 2000 个主题的列表(从http://wwbp.org/data.html获得),每个主题都有单词和相应的条件概率。它看起来像这样,0 和 1 是主题。此外,主题 0 和 1 可以有重叠的词,但可能具有不同的概率。
为简单起见,这是一个示例主题 df
term <- c("dog", "cat", "fish", "food")
topic <- c("pet","pet","pet","pet")
prob <- c(.84, .74, .44, .03)
testDF2 <- data.frame(term, topic, prob)
期望的最终结果:一种查看每个用户 ID 谈论最多的主题的方法,但是由于我有 2000 个主题,这是否意味着我必须遍历所有 2000 个主题,从而产生额外的 2000 个列,每个列都有概率?我不确定如何处理这个问题,因为我的数据集有 100 万条推文。
我目前的想法:循环遍历每条推文的每个单词,在主题表中查找,然后进行计算。但是,这将导致 2000 列和可能过多的计算时间。
提前致谢
解决方案
推荐阅读
- r - R中的数据分类
- sql - 在 Access SQL 查询中将 STRING 拆分为 OR
- reactjs - 扩展连接的有状态连接组件
- python - 如何在块文件中写入列表列表
- javascript - 如何在 Datatables 中安装插件安装插件?
- node.js - 按用户定义快捷键(由用户在 Web 应用程序中添加或编辑)?
- linux - Laravel:将网络上传到我的主机时,我无法可视化图像
- excel - 使用一种条件从列表中随机匹配 2 个人
- r - Cox 模型绘图错误(外部函数调用中的 NA/NaN/Inf(参数 1)
- php - 如何隐藏/删除已在下一个表单的 codeigniter 下拉菜单中提交的选项