我有很多包含日期和时间信息的csv文件。问题是我有两种不同的日期格式。
MM/DD/YYYY HH:MM:SS
和
MM-DD-YYYY HH:MM:SS
我不想修改每个文件。有没有办法可以将所有MM-DD-YYYY HH:MM:SS datime修改为pandas中的MM / DD / YYYY HH:MM:SS格式?
答案 0 :(得分:6)
在将它们合并到一个DataFrame / Series之前使用pandas.to_datetime。
答案 1 :(得分:3)
Pandas to_datetime
非常多才多艺,它会理解许多不同的格式。
from io import StringIO
d_csv = StringIO("""12/01/2016 01:01:00
12-01-2016 02:02:00""")
d = pd.read_csv(d_csv, header=None)
d[0] = pd.to_datetime(d[0])
print(d)
输出:
0
0 2016-12-01 01:01:00
1 2016-12-01 02:02:00
答案 2 :(得分:0)
试试这个,(用一个解析日期格式的函数)
import pandas as pd
def myparser(x):
return datetime.strptime(x, '%m/%d/%Y %H:%M:%S' )
df = pd.read_csv(filename, parse_dates=True, date_parser=myparser)