首页 > 解决方案 > 在python中将文本更改为日期时间

问题描述

将下面的列表转换为日期时间时出现错误

OutOfBoundsDatetime: Out of bounds nanosecond timestamp: 1-03-19 00:00:00

请建议我如何改变

 lst=['Dec-2015', 'Nov-2015', 'Oct-2015', 'Sep-2015', 'Aug-2015',
           'Jul-2015', 'Jun-2015', 'May-2015', 'Apr-2015', 'Mar-2015',
           'Feb-2015', 'Jan-2015', 'Mar-2018', 'Feb-2018', 'Jan-2018',
           'Sep-2017', 'Aug-2017', 'Jul-2017', 'Jun-2016', 'May-2016',
           'Apr-2016', 'Sep-2018', 'Aug-2018', 'Jul-2018', 'Jun-2017',
           'May-2017', 'Apr-2017', 'Mar-2016', 'Feb-2016', 'Jan-2016',
           'Dec-2014', 'Nov-2014', 'Oct-2014', 'Sep-2014', 'Aug-2014',
           'Jul-2014', 'Jun-2014', 'May-2014', 'Apr-2014', 'Mar-2014',
           'Feb-2014', 'Jan-2014', 'Dec-2018', 'Nov-2018', 'Oct-2018',
           'Jun-2018', 'May-2018', 'Apr-2018', 'Dec-2011', 'Nov-2011',
           'Oct-2011', 'Sep-2011', 'Aug-2011', 'Jul-2011', 'Jun-2011',
           'May-2011', 'Apr-2011', 'Mar-2011', 'Feb-2011', 'Jan-2011',
           'Dec-2010', 'Nov-2010', 'Oct-2010', 'Sep-2010', 'Aug-2010',
           'Jul-2010', 'Jun-2010', 'May-2010', 'Apr-2010', 'Mar-2010',
           'Feb-2010', 'Jan-2010', 'Dec-2009', 'Nov-2009', 'Oct-2009',
           'Sep-2009', 'Aug-2009', 'Jul-2009', 'Jun-2009', 'May-2009',
           'Apr-2009', 'Mar-2009', 'Feb-2009', 'Jan-2009', 'Dec-2008',
           'Nov-2008', 'Oct-2008', 'Sep-2008', 'Aug-2008', 'Jul-2008',
           'Jun-2008', 'May-2008', 'Apr-2008', 'Mar-2008', 'Feb-2008',
           'Jan-2008', 'Dec-2007', 'Nov-2007', 'Oct-2007', 'Sep-2007',
           'Aug-2007', 'Jul-2007', 'Jun-2007', 'Mar-2017', 'Feb-2017',
           'Jan-2017', 'Dec-2013', 'Nov-2013', 'Oct-2013', 'Sep-2013',
           'Aug-2013', 'Jul-2013', 'Jun-2013', 'May-2013', 'Apr-2013',
           'Mar-2013', 'Feb-2013', 'Jan-2013', 'Dec-2012', 'Nov-2012',
           'Oct-2012', 'Sep-2012', 'Aug-2012', 'Jul-2012', 'Jun-2012',
           'May-2012', 'Apr-2012', 'Mar-2012', 'Feb-2012', 'Jan-2012',
           'Sep-2016', 'Aug-2016', 'Jul-2016', 'Dec-2017', 'Nov-2017',
           'Oct-2017', 'Dec-2016', 'Nov-2016', 'Oct-2016', 'Mar-19', 'Feb-19',
           'Jan-19', 'Jun-19', 'May-19', 'Apr-19', 'Sep-19', 'Aug-19',
           'Jul-19']
df=pd.Series(lst)
df=pd.to_datetime(df)

标签: pythonpandas

解决方案


假设“-19”指的是“-2019”,添加缺少的字符:

pd.to_datetime(df.str.replace('-19$', '-2019'))

推荐阅读