将text2vec dtm写入文件(csv或svmlight)

时间:2016-11-27 02:32:54

标签: r sparse-matrix svmlight text2vec

我今天遇到了text2vec软件包,这正是我对特定问题所需要的。但是,我还没弄清楚如何将使用text2vec创建的dtm导出到某种输出文件。我的最终目标是使用text2vec在R中生成要素,并将生成的矩阵导入H2O以进行进一步建模。 H2O可以读取CSV或SVMLight格式。

我创建的第一个是987753 x 8806 sparse Matrix of class "dgCMatrix", with 3625049 entries,所以它非常大。使用as.matrix()将其写入CSV是不可能的,因为它太大了。我认为我可以轻松地将其写成SVMLight格式,但无法找到有效的库。任何人都有任何其他选项可以将此输出输出到我可以读入H2O的文件中吗?

1 个答案:

答案 0 :(得分:1)

有几个包可以做到这一点。看看https://github.com/Laurae2/sparsity - imho最有希望的:

library(text2vec)
library(sparsity)
data("movie_review")
N = 5000
tokens = movie_review$review[1:N] %>% tolower %>% word_tokenizer
it = itoken(tokens, progressbar = T)
dtm = create_dtm(it, hash_vectorizer())
write.svmlight(dtm, labelVector = movie_review$sentiment, file = "dtm.svmlight")