微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

LDA中的错误cdes,k = K,method =“Gibbs”,control = listverbose = 25L,:输入矩阵的每一行需要包含至少一个非零条目

如何解决LDA中的错误cdes,k = K,method =“Gibbs”,control = listverbose = 25L,:输入矩阵的每一行需要包含至少一个非零条目

我有一个包含近 90 列和大约 20 万个观察值的大型数据集。其中一列包含描述,因此它只是文本。但是,我有 100 条 NA 描述。

我尝试了来自 GitHub 的 Pablo Barbera 的关于主题模型的代码,因为我需要它。

输出

library(topicmodels)
library(quanteda)

des <- subset(finalMSI,!is.na(description),select=c(description))
corpus_des <- corpus(des$description)
df_des <- dfm(corpus_des,remove=stopwords("spanish"),verbose=TRUE,remove_punct=TRUE,remove_numbers=TRUE)
cdes <- dfm_trim(df_des,min_docfreq = 2)

# estimate LDA with K topics
K <- 20
lda <- LDA(cdes,k = K,method = "Gibbs",control = list(verbose=25L,seed = 123,burnin = 100,iter = 500))

LDA 中的错误(cdes,control = list(verbose = 25L,: 输入矩阵的每一行需要包含至少一个非零条目

因为我的子集中没有任何 NA,我不明白这个错误信息(这是我第一次使用这个包)

解决方法

您的某些文档似乎是空的,因为它们不包含任何功能计数。

您可以通过以下方式删除它们:

cdes <- dfm_trim(df_des,min_docfreq = 2) %>%
   dfm_subset(ntoken(cdes) > 0)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?