gpt4 book ai didi

Python 使用正则表达式提取 pandas 列中的部分字符串

转载 作者:行者123 更新时间:2023-11-28 21:41:20 28 4
gpt4 key购买 nike

我有一个名为“Raw”的 pandas df 列,其格式不一致。它包含的字符串如下所示:

'(1T XXX, Europe)'
'(2T YYYY, Latin America)'
'(3T ZZ/ZZZZ, Europe)'
'(4T XXX XXX, Africa)'

'Raw' 中的字符串唯一一致的是它们以数字开头,中间包含一个逗号,后跟一个空格,并且它们还包含括号。

现在,我想在我的数据框中创建两个额外的列(模型和区域):

  • 'Model' 将包含字符串的开头,即第一个括号和逗号之间的所有内容
  • 'Region' 将包含字符串的末尾,即逗号后的空格和最后一个括号之间的所有内容

我如何使用正则表达式做到这一点?

最佳答案

因为只有一个逗号,而且所有内容都在括号之间,所以在您的情况下,在适当切片后使用 .str.split() 代替:

model_region = df.Raw.str[1:-1].str.split(', ', expand = True)

但如果你坚持:

model_region = df.Raw.str.extract('\((.*), (.*)\)', expand = True)

然后

df['Model'] = model_region[0]
df['Region'] = model_region[1]

关于Python 使用正则表达式提取 pandas 列中的部分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44922259/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com