【问题标题】:How to replace a column with text in DataFrame with preprocessed text after NLP如何在 NLP 之后用预处理文本替换 DataFrame 中的文本列
【发布时间】:2022-08-15 16:24:30
【问题描述】:

我试图用预处理的文本数据替换 DataFrame 中的列。

我已将 Excel 文件导入为 pandas 数据框。

df = pd.read_excel (*file path*)

该文件由 x 行文档和 12 列组成。

我为 NLP 提取了列 \'Text\'。

text_article = (df[\'Text\'])

我已预处理此列(删除数字、停用词、标记化、词形还原等),产生以下变量:text_article[\'final\']

我现在想用 text_article[\'final\'] 替换列 (df[\'Text\']),但不知道如何。

当我导出数据框时,我得到原始列 \'Text\'

df.to_excel(\'*name*.xlsx\', index=False)

我尝试了以下代码来替换列或添加列,但它似乎不起作用。

df.insert(text_article[\'final\'])

text_article[\'final\'] = df[\'Text\']

我对 Python 比较陌生,所以我希望我已经清楚地提出了我的问题。提前致谢。

    标签: python pandas dataframe nlp


    【解决方案1】:

    如果两列的长度相同,则应该可以:

    df['Text'] = text_article['final']
    

    你反其道而行之。您将新值text_article['final'] 分配给第一个变量df['Text']

    此外,this post 可能会回答您的问题。

    【讨论】:

    • 谢谢你快速的回复。它似乎确实有效,但列中的文本仍然是原始文本,而不是预处理的文本。所以我在 text_article['final'] 中所做的更改丢失了。
    【解决方案2】:

    通过使用以下代码,我能够将带有预处理文本的列添加到数据框中:

    df2 = df.assign(Title_New_Column = text_article['final'])
    df2.to_excel('File_Name.xlsx', index=False)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-01
      • 1970-01-01
      • 2021-11-20
      • 2015-12-01
      • 2019-08-19
      • 2022-06-18
      • 1970-01-01
      相关资源
      最近更新 更多