将pandas df中的日期和时间列转换为时间戳

时间:2018-08-16 07:04:33

标签: python pandas

我是python的新手,曾经用R编写代码。 我有一个Pandas df,其中有一列日期和时间。

                     date   time 
     0           2018-06-25  07:32:25    
     1           2018-06-25  09:36:38    
     2           2018-06-25  13:31:47   
     3           2018-06-25  13:29:56   
     4           2018-06-29  04:00:13

我曾经选择这些列并创建数字矢量,以将它们转换为R中的一个时间戳矢量。是否有可能在python中做类似的事情?我已经尝试过了:

strtime = df1['time'].astype(str)
strdate = df1['date'].astype(str)

timestamp = pd.to_datetime(strdate + ' ' + strtime)

但是它给了我输出:

  

“ ValueError:未知的字符串格式”

我相信这可能是一件容易的事,所以请保持友善。

1 个答案:

答案 0 :(得分:2)

我认为有些不良值存在问题,解决方案是将参数errors='coerce'转换为NaT

timestamp = pd.to_datetime(strdate + ' ' + strtime, errors='coerce')

您可以通过以下方式检查这些值:

print (df1[pd.to_datetime(strdate + ' ' + strtime, errors='coerce').isnull()])