【发布时间】:2017-07-10 06:40:03
【问题描述】:
我正在规范化熊猫数据框中的一些年份值。
years
0 2011
1 2012
2 2050
3 11
4 23
5 01
....
n 2015
如您所见,有些值是错误的,因为它们必须是 4 位数字。因此,我想将它们转换为四位数字:
year
0 2011
1 2012
2 2050
3 2011
4 2023
5 2001
...
n 2015
对于以上内容,在previous question 中我了解到您可以使用函数替换来完成此任务:
df['years'].replace('\b\d{2}\b.*?', r'20\2', regex=True)
我尝试了不同的正则表达式:
^[0-9]{2}
^[0-9]{2}.*
(\d\d)*
^(\d{2})
r'\b\d{2}\b'
但是,这些都不起作用。因此,如何用四位数字(添加20)对上述数据帧进行归一化?
【问题讨论】:
-
years列的 dtype 是什么? -
@MaxU
year object dtype: object
标签: python regex python-3.x pandas