如何将gensim LDA主题输出保存到csv以及分数?

时间:2015-06-08 20:27:32

标签: python-2.7 gensim

如何保存输出?我使用以下代码:

%time lda1 = models.LdaModel(corpus1, num_topics=20, id2word=dictionary1, update_every=5, chunksize=10000, passes=100)

1 个答案:

答案 0 :(得分:2)

将每个文档的主题混合导出到csv文件:

import pandas as pd

mixture = [dict(lda_model[x]) for x in corpus1]
pd.DataFrame(mixture).to_csv("topic_mixture.csv")

将每个主题的热门词汇导出到csv文件:

top_words_per_topic = []
for t in range(lda_model.num_topics):
    top_words_per_topic.extend([(t, ) + x for x in lda_model.show_topic(t, topn = 5)])

pd.DataFrame(top_words_per_topic, columns=['Topic', 'Word', 'P']).to_csv("top_words.csv")

CSV文件将采用以下格式

Topic Word  P  
0     w1    0.004437  
0     w2    0.003553  
0     w3    0.002953  
0     w4    0.002866  
0     w5    0.008813  
1     w6    0.003393  
1     w7    0.003289  
1     w8    0.003197 
...