【问题标题】:combining two different formats of datetime in pandas在 pandas 中结合两种不同格式的日期时间
【发布时间】:2018-05-29 01:55:39
【问题描述】:

我有许多包含日期和时间信息的 csv 文件。问题是我有两种不同格式的日期。

 MM/DD/YYYY HH:MM:SS

MM-DD-YYYY HH:MM:SS

我不想修改每个文件。有没有办法例如将熊猫中的所有 MM-DD-YYYY HH:MM:SS 日期时间修改为 MM/DD/YYYY HH:MM:SS 格式?

【问题讨论】:

    标签: python-2.7 pandas parsing datetime


    【解决方案1】:

    在将它们合并到一个 DataFrame/Series 之前使用pandas.to_datetime

    【讨论】:

      【解决方案2】:

      试试这个,(带有解析日期格式的函数)

      import pandas as pd
      
      def myparser(x):
          return datetime.strptime(x, '%m/%d/%Y %H:%M:%S' )
      
      df = pd.read_csv(filename,  parse_dates=True, date_parser=myparser)
      

      【讨论】:

        【解决方案3】:

        Pandas to_datetime 用途广泛,可以理解许多不同的格式。

        from io import StringIO
        
        d_csv = StringIO("""12/01/2016 01:01:00
        12-01-2016 02:02:00""")
        d = pd.read_csv(d_csv, header=None)    
        
        d[0] = pd.to_datetime(d[0])
        
        print(d)
        

        输出:

                            0
        0 2016-12-01 01:01:00
        1 2016-12-01 02:02:00
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-05-20
          • 1970-01-01
          • 1970-01-01
          • 2019-09-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多