Python pandas将秒转换为时间(hh:mm)

时间:2017-05-22 17:00:56

标签: python pandas

是否可以将pandas dataframe列中的总秒数转换为另一列,其时间为hh:mm?

在我的mysql查询中,我可以执行类似

的操作
SELECT SEC_TO_TIME(xxxx);

但输出在我的pandas Dataframe中转换错误,所以我想用pandas而不是sql来做几次转换... 我正在玩pd.to_timedelta函数:

df['time'] = pd.Timedelta(Second(df['sec']))

但它没有用。

-edit -

解决了! 这不起作用:

df['time'] = pd.to_datetime(df["sec"], unit='s')

但那是因为df [" sec"]的dtype错误(它是对象类型)。我尝试先将列转换为float然后再转换为pd.to_datetime函数,现在我有了我想要的:):

df['sec'] = df['sec'].astype('float64') 
df['time'] = pd.to_datetime(df["sec"], unit='s')

1 个答案:

答案 0 :(得分:2)

这会将时间转换为YYYY-MM-DD hh:mm格式:

df['time'] = pd.to_datetime(df['time'], unit='m')