【问题标题】:How to check if dates in a pandas column are after a date如何检查熊猫列中的日期是否在日期之后
【发布时间】:2021-11-24 06:19:25
【问题描述】:

我有一个熊猫数据框

      date       
0     2010-03  
1     2017-09-14     
2     2020-10-26      
3     2004-12     
4     2012-04-01      
5     2017-02-01      
6     2013-01

我基本上想过滤 2015-12(2015 年 12 月)之后的日期

要得到这个:

      date       
0     2017-09-14     
1     2020-10-26          
2     2017-02-01  

我试过了

df = df[(df['date']> "2015-12")]

但我遇到了一个错误

ValueError: 传递的项目数错误 17,位置暗示 1

【问题讨论】:

  • 你的熊猫版本是什么?

标签: python-3.x pandas dataframe


【解决方案1】:

第一个对我来说正确的解决方案:

df = df[(df['date']> "2015-12")]
print (df)
         date
1  2017-09-14
2  2020-10-26
5  2017-02-01

如果转换为日期时间,这对我的工作来说应该更健壮:

df = df[(pd.to_datetime(df['date'])> "2015-12")]
print (df)
         date
1  2017-09-14
2  2020-10-26
5  2017-02-01

详情

print (pd.to_datetime(df['date']))
0   2010-03-01
1   2017-09-14
2   2020-10-26
3   2004-12-01
4   2012-04-01
5   2017-02-01
6   2013-01-01
Name: date, dtype: datetime64[ns]

【讨论】:

    猜你喜欢
    • 2019-07-07
    • 1970-01-01
    • 1970-01-01
    • 2018-10-14
    • 1970-01-01
    • 2018-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多