【问题标题】:How to convert pandas type <class 'pandas._libs.tslibs.timedeltas.Timedelta'> to Timestamp如何将熊猫类型 <class 'pandas._libs.tslibs.timedeltas.Timedelta'> 转换为时间戳
【发布时间】:2020-09-11 22:24:37
【问题描述】:
TimeSeries = pandas.Series(df['time_col'].values.tolist())
pandas.to_timedelta(TimeSeries).mean()

获取mean() 后,我需要将其转换为TimeStamp 数据类型以将其添加到DataFrame

下面的行不工作

pandas.to_timestamp(pandas.to_timedelta(TimeSeries).mean())
pandas.Timestamp(pandas.to_timedelta(TimeSeries).mean())

提前致谢, 拉古

【问题讨论】:

    标签: python pandas dataframe timestamp time-series


    【解决方案1】:

    为了将 timedelta 转换为时间戳,需要添加一些日期时间,例如:

    import pandas as pd
    
    out = pd.to_datetime('2000-01-01') + pd.to_timedelta(TimeSeries).mean()
    

    【讨论】:

      【解决方案2】:

      您可以使用平均 timedelta 的 total_seconds 并将其提供给 pd.Timestamp,并指定正确的单位:

      import pandas as pd
      # example Series:
      TimeSeriesDelta = pd.Series(pd.to_timedelta(['00:00:02.285932', 
                                                   '00:00:11.366717', 
                                                   '00:00:11.367594']))
      
      timestamp = pd.Timestamp(TimeSeriesDelta.mean().total_seconds(), unit='s')
      # Timestamp('1970-01-01 00:00:08.340081')
      

      请注意,这将添加一个日期,1970-01-01。

      【讨论】:

        猜你喜欢
        • 2017-09-26
        • 2021-09-23
        • 2016-03-27
        • 1970-01-01
        • 1970-01-01
        • 2019-04-26
        • 1970-01-01
        • 2017-12-12
        • 2020-12-01
        相关资源
        最近更新 更多