【发布时间】:2022-07-07 19:35:16
【问题描述】:
我有一个如下所示的数据框
df
id
0 IT030
1 IT4
2 IT022
3 BE34
我想删除字符后的所有zeros 并拥有这个
df
id
0 IT30
1 IT4
2 IT22
3 BE34
【问题讨论】:
我有一个如下所示的数据框
df
id
0 IT030
1 IT4
2 IT022
3 BE34
我想删除字符后的所有zeros 并拥有这个
df
id
0 IT30
1 IT4
2 IT22
3 BE34
【问题讨论】:
您可以使用正则表达式:
# if 0s after a non digit, remove them
df['id'] = df['id'].str.replace(r'(\D)0+', r'\1', regex=True)
或:
# if 0s between a non digit and a digit, remove them
df['id'] = df['id'].str.replace(r'(\D)0+(\d+)', r'\1\2', regex=True)
输出(为清楚起见,作为新列id2):
id id2
0 IT030 IT30
1 IT4 IT4
2 IT022 IT22
3 BE34 BE34
【讨论】: