Есть модель LDA из модуля gensim.models.ldamodel. Её метод
get_document_topics(corpus) возвращает объект, который можно преобразовать в список списков картежей: [[(0, 0.09714252),
(1, 0.04680671), ..., где длина списка - это ось документов, а первое число картежа - ось тем, а второе - вероятность темы документа.
Хотелось бы преобразовать этот список в плотный numpy-массив. Есть ли готовые решения?
Пока делаю так (не люблю, когда в коде много циклов):
document_topics = pd.concat(
[pd.Series(dict(doc)) for doc in lda.get_document_topics(corpus)],
axis=1
).T.fillna(0).values
Подскажите, пожалуйста, более элегантное решение желательно в одну строчку.