提问人:angeliquelinde 提问时间:2/25/2023 更新时间:3/9/2023 访问量:49
如何在 Python Pandas Dataframe 中用逗号分隔的文本列中的单个单词替换文本片段?
How do I replace text snippets with single words in comma seperated text column in Python Pandas Dataframe?
问:
我想在 DataFrame 的文本列中映射以下值,如下所示:
对此:
我想我可以使用字典将文本片段映射到单个单词。这是我尝试过的代码:
import pandas as pd
data = {"col": ['i am hungry, you are pretty', 'i am hungry, you are pretty, i love flowers',
'i am hungry, i love flowers', 'i am hungry,choccies are nice']}
replace = {'hungry': 'i am hungry',
'pretty': 'you are pretty',
'flowers': 'i love flowers',
'choccies':'choccies are nice'}
new = df.replace({"col": replace})
但我只是拿回了原来的 DataFrame。
答:
0赞
Giovanni Giacometti
2/25/2023
#1
您需要切换字典的键和值,因为 replace 方法要求字典的格式为 {“what to replace” : “replacement”}。您还需要将参数 regex 指定为 true,以便将替换作为正则表达式筛选执行。这应该可以做到。
replace = { 'i am hungry' : 'hungry',
'you are pretty' : 'pretty',
'i love flowers' : 'flowers',
'choccies are nice': 'choccies' }
df = df.replace({'col': replace}, regex = True)
评论