我有一个关于 R 中 topicmodels 中的 LDA 的问题。我创建了一个矩阵,其中文档为行,术语为列,文档中的术语数作为数据框中的相应值。当我想启动 LDA 时,我收到一条错误消息,说明"Error in !all.equal(x$v, as.integer(x$v)) : invalid argument type". 数据包含 368 个词条的 1675 个文档。我该怎么做才能使代码正常工作?
library("tm")
library("topicmodels")
data_matrix <- data %>%
group_by(documents, terms) %>%
tally %>%
spread(terms, n, fill=0)
doctermmatrix <- as.DocumentTermMatrix(data_matrix, weightTf("data_matrix"))
lda_head <- topicmodels::LDA(doctermmatrix, 10, method="Gibbs")
非常感谢您的帮助!
编辑
# Toy Data
documentstoy <- c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16)
meta1toy <- c(3,4,1,12,1,2,3,5,1,4,2,1,1,1,1,1)
meta2toy <- c(10,0,10,1,1,0,1,1,3,3,0,0,18,1,10,10)
termstoy <- c("cus","cus","bill","bill","tube","tube","coa","coa","un","arc","arc","yib","yib","yib","dar","dar")
toydata <- data.frame(documentstoy,meta1toy,meta2toy,termstoy)