在python中将整数列转换为时间

时间:2017-12-10 21:34:50

标签: python datetime

我有一列数据与' int'格式我想把它改成日期时间格式,我的时间就像是94320应该是9:43:20或者另一个例子:143020应该是14:30:20。我用

quote['SellTime'] = pd.to_datetime(quote['SellTime'], unit = 's')

但它将1970-01-01添加到我不需要它的时间开始。

2 个答案:

答案 0 :(得分:0)

>>> import pandas as pd
>>> df = pd.DataFrame({'SellTime': [94320, 143020]})
>>> df
   SellTime
0     94320
1    143020
>>> df['New'] = pd.to_datetime(df['SellTime'], format='%H%M%S').dt.time
>>> df
   SellTime       New
0     94320  09:43:20
1    143020  14:30:20

答案 1 :(得分:0)

in plain python:

def format_time(value):
    t2 = str(value)
    if len(t2) == 5:
        return "0%s:%s:%s" % (t2[0], t2[1:3], t2[3:5])
    return "%s:%s:%s" % (t2[0:2], t2[2:4], t2[4:6])


print(format_time(60000))
print(format_time(120000))

返回

06:00:00
12:00:00

此函数假定所有值都正确。没有检查,例如小时55