如何解决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 举报,一经查实,本站将立刻删除。