首页 > 解决方案 > 替换列中重复的第二个字符并替换剩余的一个。- Python

问题描述

我正在使用一个数据框,该数据框在一列中有两种类型的输入错误(未放置的句点)。值应该是数字,这就是为什么它应该只有一个句点,并且根据实际情况,值的范围在 0 到 2 之间。我正在考虑将其中一个点替换为空字符,然后移动剩余的点以便值在预期范围内。然而我不知道怎么做。我会很感激你的帮助。

我所拥有的小例子:

1 11.90.11
2 12.9110
3 12.8.117
4 13.093
5 131.32

应该:

1 1.19011
2 1.29110
3 1.28117
4 1.3093
5 1.3132

标签: python

解决方案


不是最优雅的,但假设您在数据框中工作,则可以做到这一点:

df['new_field'] = (df['field'].str.strip('.').str[:1] + '.' + df['field'].str.strip('.').str[1:])

去除列的“。”值。然后加 ”。” 回到第一个位置。


推荐阅读