如何从 Python 中的 DataFrame 列中删除特定的更改文本?
How to Remove particular changing text in from a DataFrame column in Python?
我有一个包含列 'test' 的数据框。它看起来像这样:
Column Test
'[ABC: 814.6] text text text text [text:123]'
'[ABC: 432.9] text text [ABC: 433] text text [text:123]'
'[ABC: 1] text text text [342:] text [text:123]'
我想删除所有 '[ABC: XXX.X]' 部分。
我知道如何替换 'static' 文本,像这样:
df['Test_New'] = df['Test'].str.replace("[ABC: XXX.X]", '')
但是由于 XXX.X 正在改变,我不知道如何解决这个问题。
期望的输出:
Column Test
' text text text text [text:123]'
' text text text text [text:123]'
' text text text [342:] text [text:123]'
非常感谢!
根据@ZaxR 的评论,str.replace
支持正则表达式。
df['Test_New'] = df['Test'].str.replace(r"\[ABC: [\d]{1,3}(?:.\d)?\]", '')
我有一个包含列 'test' 的数据框。它看起来像这样:
Column Test
'[ABC: 814.6] text text text text [text:123]'
'[ABC: 432.9] text text [ABC: 433] text text [text:123]'
'[ABC: 1] text text text [342:] text [text:123]'
我想删除所有 '[ABC: XXX.X]' 部分。 我知道如何替换 'static' 文本,像这样:
df['Test_New'] = df['Test'].str.replace("[ABC: XXX.X]", '')
但是由于 XXX.X 正在改变,我不知道如何解决这个问题。
期望的输出:
Column Test
' text text text text [text:123]'
' text text text text [text:123]'
' text text text [342:] text [text:123]'
非常感谢!
根据@ZaxR 的评论,str.replace
支持正则表达式。
df['Test_New'] = df['Test'].str.replace(r"\[ABC: [\d]{1,3}(?:.\d)?\]", '')