【问题标题】:Offset date based on condition基于条件的偏移日期
【发布时间】:2022-01-10 23:58:54
【问题描述】:

对于这个查询,我的答案不正确 - 2061 年似乎不合适。将

我的数据框日期列 - 2061-01-01,2061-01-02 ,2061-01-03...

必填答案 - 1961-01-01,1961-01-02,1961-01-03...

myanswer-1983-05-06 19:59:05.224192,1983-05-07 19:59:05.224192,1983-05-08 19:59:05.224192.....

我的代码(数据框名称是数据)

for i in  pd.DatetimeIndex(data['DATE']).year:
    if i<2000:
        data['DATE']=data.DATE+pd.offsets.DateOffset(years=100)

【问题讨论】:

    标签: python pandas numpy data-science


    【解决方案1】:

    检查一下:

    from datetime import datetime , timedelta
    data['DATE'] = data.apply(lambda row: datetime.strptime(row['DATE'], "%Y-%m-%d") - timedelta(days=100*365+25), axis = 1)
    

    数据将导致:

        DATE
    0   1961-01-01
    1   1961-01-02
    2   1961-01-03
    

    【讨论】:

    • 嘿,它给了我错误 -strptime() 参数 1 必须是 str,而不是时间戳
    • 能否分享原始数据或包含“数据”的值?
    • 嘿,谢谢,感谢您的时间,我得到了解决方案 data["DATE"] = np.where(pd.DatetimeIndex(data["DATE"]).year
    • 当然,伙计.. 但点击它显示我- 感谢您的反馈!您需要至少 15 声望才能投票,但您的反馈已被记录。
    猜你喜欢
    • 1970-01-01
    • 2020-08-11
    • 2018-09-20
    • 1970-01-01
    • 1970-01-01
    • 2021-10-27
    • 2021-12-22
    • 1970-01-01
    • 2023-02-05
    相关资源
    最近更新 更多