Python:与格式'%Y-%m-%d%H:%M:%S'

时间:2020-03-15 20:29:15

标签: python python-3.x python-datetime

我有两个日期时间数据帧,如下所示: df1:

0   2020-03-16 14:00:00
1   2020-03-16 17:00:00
2   2020-03-16 20:00:00
3   2020-03-16 20:00:00
4   2020-03-16 19:00:00
5   2020-03-16 12:00:00
6   2020-03-16 18:00:00

df2:

0   2020-03-16 09:00:00
1   2020-03-16 09:00:00
2   2020-03-16 09:00:00
3   2020-03-16 08:30:00
4   2020-03-16 08:30:00
5   2020-03-16 08:30:00
6   2020-03-16 09:00:00

我想从df1中删除df2并将结果转换为分钟。为此,我使用以下代码将每个数据帧转换为datetime.strptime:

datetime.strptime(df1.to_string(),'%Y-%m-%d %H:%M:%S')

但是,当我在上面的代码中运行时,它将引发Value错误的错误消息,并指出value与格式'%Y-%m-%d %H:%M:%S'不匹配。谁能指出我在哪里犯错了?

1 个答案:

答案 0 :(得分:3)

这对我有用:

pd.to_datetime(df1.date, format='%Y-%m-%d %H:%M:%S') # I named my column 'date'

不起作用的原因是,当您使用to_string()时,它会显示以下内容:

Out[78]: '0   2020-03-15 09:00:00\n1   2020-03-15 09:00:00\n2   2020-03-15 08:30:00\n3 

复制示例dataframe后,这是我的完整代码:

import pandas as pd

df1 = pd.read_clipboard(index_col=0, header=None)
df1['date'] = df1.iloc[:, 0] + ' ' + df1.iloc[:, 1]
pd.to_datetime(df1.date, format='%Y-%m-%d %H:%M:%S')