9

I've used various versions of TFIDF in scikit learn to model some text data.

vectorizer = TfidfVectorizer(min_df=1,stop_words='english')

The resulting data X is in this format:

<rowsxcolumns sparse matrix of type '<type 'numpy.float64'>'
    with xyz stored elements in Compressed Sparse Row format>

I wanted to experiment with LDA as a way to do reduce dimensionality of my sparse matrix. Is there a simple way to feed the NumPy sparse matrix X into a gensim LDA model?

lda = models.ldamodel.LdaModel(corpus=corpus, id2word=dictionary, num_topics=100)

I can ignore scikit and go the way the gensim tutorial outlines, but I like the simplicity of the scikit vectorizers and all of its parameters.

Cœur
  • 37,241
  • 25
  • 195
  • 267
ADJ
  • 4,892
  • 10
  • 50
  • 83

1 Answers1

11

http://radimrehurek.com/gensim/matutils.html

class gensim.matutils.Sparse2Corpus(sparse, documents_columns=True)

      Convert a matrix in scipy.sparse format into a streaming gensim corpus.
alko
  • 46,136
  • 12
  • 94
  • 102