我有一些代码,我过去用它来制作主题模型。一切都工作正常,直到我更新了所有的r包,希望能解决一个稍微不相关的问题。现在,以前工作过的代码似乎已被打破,我无法弄清楚要做什么。
我read this post并发现它最初设置它非常有帮助。它描述了在删除稀疏术语以清除后续分析后清除空白行的方法。以下是当我使用当前包输入相同代码时会发生的情况:
> rowTotals <- apply(a.dtm.t, 1, sum) #Find the sum of words in each Document
> a.dtm.t.rt <- a.dtm.t[rowTotals>0]
Error in `[.simple_triplet_matrix`(a.dtm.t, rowTotals > 0) :
Logical vector subscripting disabled for this object.
有谁知道如何定位问题,并回滚到有效的解决方案?感谢。
答案 0 :(得分:0)
尝试a.dtm.t.rt <- a.dtm.t[which(rowTotals>0)]
如果这不起作用,那么您需要显示一个可重现的示例。我们不知道你在这做什么。
答案 1 :(得分:0)
我发现和你一样的问题。我使用slam
包解决了这个问题。
library(slam)
# take tdm as a large term-document matrix
freq <- rowapply_simple_triplet_matrix(tdm,sum)
此外colapply_simple_triplet_matrix
将有助于处理稀疏矩阵