首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >simple_triplet_matrix中的错误--无法使用RWeka来计数短语

simple_triplet_matrix中的错误--无法使用RWeka来计数短语
EN

Stack Overflow用户
提问于 2013-12-13 22:22:45
回答 1查看 2.5K关注 0票数 3

使用TM,我将DocumentTermMatrix与字典列表进行比较,以计算总计:

代码语言:javascript
复制
totals <- inspect(DocumentTermMatrix(x, list(dictionary = d)))

这对于单个单词来说很好,但是我想包括两个单词,但我不知道如何做到这一点。

我试过RWeka:

代码语言:javascript
复制
TrigramTokenizer <- function(x) NGramTokenizer(x, 
                                               Weka_control(min = 3, max = 3))
tdm <- TermDocumentMatrix(v.corpus, 
                          control = list(tokenize = TrigramTokenizer))

BUt得到以下错误消息:

代码语言:javascript
复制
Error in simple_triplet_matrix(i = i, j = j, v = as.numeric(v), nrow = length(allTerms),  : 
  'i, j, v' different lengths
In addition: Warning messages:
1: In parallel::mclapply(x, termFreq, control) :
  all scheduled cores encountered errors in user code
2: In is.na(x) : is.na() applied to non-(list or vector) of type 'NULL'
3: In simple_triplet_matrix(i = i, j = j, v = as.numeric(v), nrow = length(allTerms),  :
  NAs introduced by coercion.

你能帮我处理错误信息吗?

谢谢!!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-26 14:32:08

见我的答案here

使用RWeka并行包似乎存在问题。我找到了解决方案here. 1http://r.789695.n4.nabble.com/RWeka-and-multicore-package-td4678473.html#a4678948 最重要的一点不是加载RWeka包并在封装的函数中使用命名空间。所以你的记号器应该看起来像 BigramTokenizer <- function(x) {RWeka::NGramTokenizer(x,RWeka::Weka_control(min = 2,max = 2))}

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20577040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档