【问题标题】:Convert Object to Datetime [duplicate]将对象转换为日期时间 [重复]
【发布时间】:2019-12-29 11:42:08
【问题描述】:

我有一个 pandas 列,其中包含时间数据,列数据类型是对象。

time
Aug 23, 2019 16:30:00
Aug 24, 2019 13:50:00
Aug 16, 2019 08:20:00
Aug 18, 2019 09:00:00

如何将列转换为Datatime

【问题讨论】:

  • pd.to_datetime(...)?
  • 先生试过了,但出现错误。
  • 将您尝试过的内容添加到您的问题中,同时添加错误。这有助于其他人了解您的问题。
  • pd.to_datetime(df['time']) 其中df 是您的数据框。
  • 我在本地尝试过,似乎可以。

标签: python python-3.x pandas datetime


【解决方案1】:

为了加快速度,最好指定日期格式,

df['DATE'] = pd.to_datetime(df['DATE'], format="%b %d, %Y %H:%M:%S")

【讨论】:

    【解决方案2】:

    你可以试试下面的

    df['DATE'] = pd.to_datetime(df['DATE'])
    

    不要做

    df['Date'] = pd.to_datetime(df['time']).strftime('%d_%m_%Y')
    

    因为系列对象没有属性'strftime'

    【讨论】:

      【解决方案3】:

      使用 this 将任何字符串模式转换为日期时间对象

      1.编写一个函数,接收字符串对象并将其转换为日期时间对象

      2. 使用 .apply() 函数对 Series 对象的所有行使用。

      检查下面的代码

      import datetime
      
      def splitdates(string):
          month, date, year, time = string.split()
          return datetime.date(int(year), month, date[:len(date)-1])
      
      # Assuming time is a Series object
      # Do something like this
      
      time.apply(lambda x: splitdates(x))
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-11-02
        • 2012-12-09
        • 2016-09-24
        • 2017-01-08
        • 1970-01-01
        • 2011-09-05
        • 2018-11-03
        相关资源
        最近更新 更多