【问题标题】:Pandas: timestamp to datetime熊猫:日期时间的时间戳
【发布时间】:2017-02-23 14:11:10
【问题描述】:

我的数据框和列的日期看起来像

 date
 1476329529    
 1476329530    
 1476329803 
 1476329805 
 1476329805  
 1476329805 

我使用df['date'] = pd.to_datetime(df.date, format='%Y-%m-%d %H:%M:%S') 转换它,但我得到了奇怪的结果

 date 
 1970-01-01 00:00:01.476329529   
 1970-01-01 00:00:01.476329530   
 1970-01-01 00:00:01.476329803  
 1970-01-01 00:00:01.476329805    
 1970-01-01 00:00:01.476329805   
 1970-01-01 00:00:01.476329805   

也许我做错了什么

【问题讨论】:

    标签: python datetime pandas


    【解决方案1】:

    可能是这样的:

    import datetime
    date = datetime.datetime.fromtimestamp(1476329529)
    date
    # gives
    # datetime.datetime(2016, 10, 13, 5, 32, 9)
    
    str(date) # '2016-10-13 05:32:09'
    

    【讨论】:

      【解决方案2】:

      这看起来像纪元时间戳,它是自 1970 年 1 月 1 日以来的秒数:

      In [71]:
      pd.to_datetime(df['date'], unit='s')
      ​
      Out[71]:
      0   2016-10-13 03:32:09
      1   2016-10-13 03:32:10
      2   2016-10-13 03:36:43
      3   2016-10-13 03:36:45
      4   2016-10-13 03:36:45
      5   2016-10-13 03:36:45
      Name: date, dtype: datetime64[ns]
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-06-16
        • 2021-05-08
        • 1970-01-01
        • 1970-01-01
        • 2015-05-25
        • 1970-01-01
        相关资源
        最近更新 更多