使用以下条件在PANDAS字符串字段中有条件地插入字符的最佳方法是什么:
不要添加"。"如果没有其他字符尾随
96501
E0000
V909
965
变为
965.01
E000.0
V909
965
答案 0 :(得分:1)
您可以使用((?:\D*\d){3})
捕获前三位数字,使用(?=.+)
断言后面至少还有一个字符,并使用反向引用将.
添加到捕获的模式中:
df[0].str.replace(r'^((?:\D*\d){3})(?=.+)', r'\1.')
#0 965.01
#1 E000.0
#2 V909
#3 965
#Name: 0, dtype: object