【发布时间】:2022-01-13 04:19:07
【问题描述】:
我有一个以字符串形式存储日期的 pandas 数据框。那里有一些错误数据,当我尝试将它们转换为日期时会引发错误。
这是数据:
df['strDates']
0 19990510
1 20150303
2 20090908
3 19920200 <-- Bad Date
4 20030530
当我跑步时,
df['lastSaleDate'] = pd.to_datetime(df['lastSaleDate'], format='%Y%m%d')
我收到一个错误:
/Applications/Anaconda/anaconda3/lib/python3.9/site-packages/pandas/core/tools/datetimes.py in _array_strptime_with_fallback(arg, name, tz, fmt, exact, errors, infer_datetime_format)
434
435 try:
--> 436 result, timezones = array_strptime(arg, fmt, exact=exact, errors=errors)
437 if "%Z" in fmt or "%z" in fmt:
438 return _return_parsed_timezone_results(result, timezones, tz, name)
/Applications/Anaconda/anaconda3/lib/python3.9/site-packages/pandas/_libs/tslibs/strptime.pyx in pandas._libs.tslibs.strptime.array_strptime()
ValueError: time data '19920200' does not match format '%Y%m%d' (match)
【问题讨论】: