【发布时间】:2026-01-27 01:45:01
【问题描述】:
我有一个包含日期列的 csv 文件。日期是按月份顺序排列的——所以一月先到,然后是二月,依此类推。问题是某些日期采用 mm/dd/yyyy 格式,而其他日期采用 dd/mm/yyyy 格式。这是它的样子。
日期
01/08/2005
01/12/2005
15/01/2005
19/01/2005
22/01/2005
26/01/2005
29/01/2005
03/02/2005
05/02/2005
...
我想把它们都变成相同的格式(dd/mm/yyyy)
我正在使用 Python 和 pandas 来读取和编辑 csv 文件。我尝试使用 Excel 使用内置格式工具手动更改日期格式,但对于大量行似乎是不可能的。我正在考虑使用正则表达式,但我不太清楚如何区分月份优先和日期优先。
# here's what i have so far
date = df.loc[i, 'Date']
pattern = r'\d\d/\d\d/\d\d'
match = re.search(pattern, date)
if match:
date_items = date.split('/')
day = date_items[1]
month = date_items[0]
year = date_items[2]
new_date = f'{dd}/{mm}/{year}'
df.loc[i, 'Date'] = new_date
我希望 csv 最后具有统一的日期格式。
【问题讨论】:
标签: python regex csv data-science