【问题标题】:Comparing dates of different formats between pandas dataframes比较熊猫数据框之间不同格式的日期
【发布时间】:2016-10-30 20:19:06
【问题描述】:

我有两个按日期索引的数据框,我需要比较日期 - 整理出与两个数据框不相互的所有日期条目。第一个数据帧的格式为: 2011-10-31

另一个有一些来自 pandas/python 的日期时间格式,当被调用时显示为: 2011-10-31T01:00:00.000000000+0100

显然,比较两者会返回错误/不相等。我想进行比较的最简单方法是减少后一种格式。我该怎么做?

【问题讨论】:

    标签: date pandas dataframe format


    【解决方案1】:

    使用pandas.to_datetime,它将为您完成转换。

    df1 = pd.DataFrame({'date':['2011-10-31', '2011-10-31', '2011-10-29'],'val':range(3)}).set_index('date')
    df2 = pd.DataFrame({'date':['2011-10-31T01:00:00.000000000+0100',
                          '2011-10-31T00:00:00.000000000+0000',
                          '2011-10-29T11:00:00.000000000+0100'],'val':range(3)}).set_index('date')
    

    测试对比:

    df1.index==df2.index
    # array([False, False, False], dtype=bool)
    
    pd.to_datetime(df1.index)==pd.to_datetime(df2.index)
    # array([ True,  True, False], dtype=bool)
    

    【讨论】:

      猜你喜欢
      • 2021-03-21
      • 1970-01-01
      • 2017-03-28
      • 2021-10-08
      • 1970-01-01
      • 2020-10-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-02
      相关资源
      最近更新 更多