首页 > 解决方案 > 如何将此打印语句转换为数据框?Python NLP LSA 主题

问题描述

我需要将这些 LSA 主题添加到我的数据框中的每个相应主题中。如何在数据框中获取此打印语句输出?

--> 我正在尝试在不同的列中获取包含主题编号及其相应关键字的数据框。

# most important words for each topic
vocab = vect.get_feature_names()

for i, comp in enumerate(lsa_model.components_):
    vocab_comp = zip(vocab, comp)
    sorted_words = sorted(vocab_comp, key= lambda x:x[1], reverse=True)[:3]
    print("Topic "+str(i)+": ")
    for t in sorted_words:
        print(t[0],end=" ")
    print("\n")

话题一:xxx yyy zzz。. . 话题 8:fddd dddd dsdsd

话题 9: 啊啊啊啊啊啊啊

标签: pythonnlplsa

解决方案


将以下行添加到工作环境的顶部:

import pandas as pd

headings=['Name_of_Variable1','Name_of_Variable2'] # add more as needed
df = pd.DataFrame([], columns=headings) 

并且,在您的函数中添加以下行或类似内容for t in sorted_words:

df = df.append(t,ignore_index=True)

看起来像:

for t in sorted_words:
    print(t[0],end=" ")
    df = df.append(t,ignore_index=True)
    print("\n")

请使用以下材料正确使用附加功能:https ://www.geeksforgeeks.org/python-pandas-dataframe-append/


推荐阅读