【问题标题】:Python pandas convert seconds to time (hh:mm)Python pandas 将秒转换为时间 (hh:mm)
【发布时间】:2017-10-22 10:30:22
【问题描述】:

是否可以将其中包含总秒数的 pandas 数据框列转换为具有 hh:mm 等时间的另一列?

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

SELECT SEC_TO_TIME(xxxx);

但是我的 pandas Dataframe 中的输出转换错误,所以我想用 pandas 而不是 sql 进行从秒到时间的转换... 我正在玩 pd.to_timedelta 函数:

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

但它不起作用。

-编辑-

解决了! 这不起作用:

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

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

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

【问题讨论】:

标签: python pandas


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2018-12-02
    • 1970-01-01
    • 1970-01-01
    • 2021-01-25
    • 2018-10-10
    • 2018-11-01
    • 2012-10-12
    • 2019-07-07
    • 2014-10-06
    相关资源
    最近更新 更多