为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用一行中所有括号内包含的值创建一个新列?

如何使用一行中所有括号内包含的值创建一个新列?

一只名叫tom的猫 2023-07-11 16:58:10
我想从中提取括号的列:   SktNo                         Description0     19  WATER CALTROP (LING KOK) (CHN) K10我最初能够通过提取括号中的值来创建一个新列:df['Origin'] = df['Description'].str.extract(r"\(([A-Za-z]+)\)", expand=False)但这取的是其中字母数量最少的括号,而不是两个。我希望新列包含括号之间的两个字符串,如下所示:Origin LING KOK, CHN
查看完整描述

1 回答

?
不负相思意

TA贡献1777条经验 获得超10个赞

使用Series.str.findallSeries.str.join


df['Origin'] = df['Description'].str.findall(r'\((.*?)\)').str.join(', ')

结果:


   SktNo                         Description         Origin

0     19  WATER CALTROP (LING KOK) (CHN) K10  LING KOK, CHN


查看完整回答
反对 回复 2023-07-11
  • 1 回答
  • 0 关注
  • 126 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信