我有一个数据框,其中包含一些需要清理的日期列。我试着用re或者包含,到目前为止我还没有成功。
Date
1 January 2004 : ygagy
3 December 2001 , this job
...04 February 2000 , xyz
理想情况下,我需要看起来像这样:
Date
01 January 2004
03 December 2001
04 February 2000
答案 0 :(得分:0)
这可能会有所帮助。使用 dateutil 模块
import dateutil.parser as dparser
df["Date"] = [dparser.parse(i,fuzzy=True).strftime('%d %B, %Y') for i in df['Date']]
<强>输出强>:
0 01 January, 2004
1 03 December, 2001
2 04 February, 2000
Name: Date, dtype: object
并使用Regex:
df["Date"] = df.Date.apply(lambda x: re.findall('\d{1,2} \w{3,9} \d{4}', x)[0])
print df["Date"]
<强>输出:强>
0 1 January 2004
1 3 December 2001
2 04 February 2000
3 01 Januari 2017
Name: Date, dtype: object