将 Pandas 系列转换为日期时间格式时出现格式错误
Formatting error on converting Pandas series to datetime format
我正在尝试将这一系列日期转换为日期时间格式,但我一直收到格式不匹配的错误消息:
ValueError: time data '12-Feb-10' does not match format '%d-%b-%Y' (match)
holiday_list_0 = pd.Series(['12-Feb-10', '11-Feb-11', '10-Feb-12', '8-Feb-13','10-Sep-10', '9-Sep-11', '7-Sep-12'\
, '6-Sep-13','26-Nov-10', '25-Nov-11', '23-Nov-12', '29-Nov-13','31-Dec-10', '30-Dec-11'\
, '28-Dec-12', '27-Dec-13'])
pd.to_datetime(holiday_list_0, format='%d-%b-%Y')
我似乎找不到原因
使用%y
匹配YY
格式:
out = pd.to_datetime(holiday_list_0, format='%d-%b-%y')
这也有效:
out = pd.to_datetime(holiday_list_0)
如果指定格式,在大 DataFrame
s 中会更快一些:
#160k
holiday_list_0 = pd.Series(['12-Feb-10', '11-Feb-11', '10-Feb-12', '8-Feb-13','10-Sep-10', '9-Sep-11', '7-Sep-12'\
, '6-Sep-13','26-Nov-10', '25-Nov-11', '23-Nov-12', '29-Nov-13','31-Dec-10', '30-Dec-11'\
, '28-Dec-12', '27-Dec-13'] * 10000)
In [37]: %timeit pd.to_datetime(holiday_list_0)
28.2 ms ± 2.15 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)
In [38]: %timeit pd.to_datetime(holiday_list_0, format='%d-%b-%y')
21.1 ms ± 552 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)
我正在尝试将这一系列日期转换为日期时间格式,但我一直收到格式不匹配的错误消息:
ValueError: time data '12-Feb-10' does not match format '%d-%b-%Y' (match)
holiday_list_0 = pd.Series(['12-Feb-10', '11-Feb-11', '10-Feb-12', '8-Feb-13','10-Sep-10', '9-Sep-11', '7-Sep-12'\
, '6-Sep-13','26-Nov-10', '25-Nov-11', '23-Nov-12', '29-Nov-13','31-Dec-10', '30-Dec-11'\
, '28-Dec-12', '27-Dec-13'])
pd.to_datetime(holiday_list_0, format='%d-%b-%Y')
我似乎找不到原因
使用%y
匹配YY
格式:
out = pd.to_datetime(holiday_list_0, format='%d-%b-%y')
这也有效:
out = pd.to_datetime(holiday_list_0)
如果指定格式,在大 DataFrame
s 中会更快一些:
#160k
holiday_list_0 = pd.Series(['12-Feb-10', '11-Feb-11', '10-Feb-12', '8-Feb-13','10-Sep-10', '9-Sep-11', '7-Sep-12'\
, '6-Sep-13','26-Nov-10', '25-Nov-11', '23-Nov-12', '29-Nov-13','31-Dec-10', '30-Dec-11'\
, '28-Dec-12', '27-Dec-13'] * 10000)
In [37]: %timeit pd.to_datetime(holiday_list_0)
28.2 ms ± 2.15 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)
In [38]: %timeit pd.to_datetime(holiday_list_0, format='%d-%b-%y')
21.1 ms ± 552 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)