Вам необходимо использовать функцию quanteda::convert
. Эта функция может преобразовать dfm в разные форматы для разных пакетов. Смотрите ?convert
для всех вариантов.
См. Пример ниже для решения вашего примера.
library(quanteda)
df <- data.frame(text = c("one text here", "one more here and there"), stringsAsFactors = FALSE)
toks_tweets <- tokens(df$text, remove_punct = TRUE)
dfmat_tweets <- dfm(toks_tweets,
stem = FALSE,
remove_punct = TRUE)
out <- convert(dfmat_tweets, to = "stm") # convert to stm format
library(stm)
fittedModel <- stm(documents = out$documents, vocab = out$vocab, K = 3, init.type = "Spectral")
fittedModel
# A topic model with 3 topics, 2 documents and a 6 word dictionary.