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

使用 str.replace() 从 pandas 数据框中的字符串中删除第 n 个字符

使用 str.replace() 从 pandas 数据框中的字符串中删除第 n 个字符

胡说叔叔 2022-07-12 15:38:59
我有一个由字符串组成的熊猫数据框。我想从字符串末尾删除第 n 个字符。我有以下代码:DF = pandas.DataFrame({'col': ['stri0ng']})DF['col'] = DF['col'].str.replace('(.)..$','')它不是删除倒数第三个字符(0在这种情况下),而是删除0ng. 结果应该是string但它输出stri。我哪里错了?
查看完整描述

2 回答

?
月关宝盒

TA贡献1772条经验 获得超5个赞

您可能希望替换单个字符,然后替换n-1字符串末尾的字符:


DF['col'] = DF['col'].str.replace('.(?=.{2}$)', '')


      col

0  string

如果您想确保只删除数字(以便'string'在一个特殊行中不会更改为'strng'),请使用类似'[0-9](?=.{2}$)'模式的东西。


查看完整回答
反对 回复 2022-07-12
?
侃侃无极

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

另一种使用方式pd.Series.str.slice_replace

df['col'].str.slice_replace(4,5,'')

输出:

0    string
Name: col, dtype: object


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

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号