我对这个标题表示歉意,但无法找到更好的措辞方式。
当我尝试运行时
pd.to_datetime(df['TimeStamp'], format='%Y-%m-%d %H:%M:%S.%f')
我收到以下异常:
time data '2019-01-06 15:34:19.000' doesn't match format specified
这个时间包含在我的数据框的第一行中。它确实似乎采用指定的格式,因此我通过手动将 TimeStamp 列中的几行直接复制粘贴到 Series 构造函数中来测试它:
tempSeries = pd.Series(['2019-01-06 15:34:19.023', '2019-01-06 15:34:19.000'])
当我调用 pd.to_datetime(tempSeries, format='%Y-%m-%d %H:%M:%S.%f')
时,一切正常。
我应该能够像第一个示例一样传递该系列,对吗?任何人都可以对可能发生的事情提出建议吗?
编辑:
根据要求,这里是df['TimeStamp].head().to_dict()
:
{0: "'2019-01-06 15:36:19.000'",
1: "'2019-01-06 15:37:19.000'",
2: "'2019-01-06 15:38:19.000'",
3: "'2019-01-06 15:39:19.000'",
4: "'2019-01-06 15:40:19.000'"}
最佳答案
您可以看到您的字符串是单引号和双引号的。
您需要将格式更改为
format="'%Y-%m-%d %H:%M:%S.%f'"
或者
使用
pd.to_datetime(df['Timestamp'].str.strip("'")) #cs95
关于python - Pandas.to_datetime() 仅在数据框中的列上失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56796453/