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

从 python 数据框中的第二个下划线后面获取数据?

从 python 数据框中的第二个下划线后面获取数据?

泛舟湖上清波郎朗 2022-12-20 09:31:58
我正在尝试从 python 数据帧中返回第二个下划线后获取数据?    number0   a_bc_def 12_23_this_67291   abc_def,122$3_this_67292   abc_def_1_2_23_this_6729    number0   this_67291   this_67292   this_6729我试图从一开始就从第二个下划线获取数据。df['number'] = df['number'].str.split('_',2).apply(lambda x: x[-1])如何从后面的第二个下划线开始?
查看完整描述

2 回答

?
富国沪深

TA贡献1790条经验 获得超9个赞

一种方法是将相同的字符串反转,执行操作,然后再次反转。

df['number'].apply(lambda x: str(x)[::-1].split('_',2)[-1][::-1])

它不是很有效,因为你需要反转两次,但字符串不会太长,在我看来这不会那么糟糕。


查看完整回答
反对 回复 2022-12-20
?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

不需要申请,这个可以通过str方法操作来完成


str.split('_')在下划线处分割


str[-2:]选择拆分后的最后 2 个元素


str.join('_')将这些元素连接成一个字符串


df['number']=df['number'].str.split('_').str[-2:].str.join('_')


0    this_6729

1    this_6729

2    this_6729


查看完整回答
反对 回复 2022-12-20
  • 2 回答
  • 0 关注
  • 53 浏览
慕课专栏
更多

添加回答

举报

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