亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

過濾 pandas 數據框日期列 X 個月(從月初算起)

過濾 pandas 數據框日期列 X 個月(從月初算起)

牛魔王的故事 2023-12-29 15:32:20
無法找到解決我的問題的方法。假設我有一個 df:df = pd.DataFrame({'col':np.random.randn(len(date_rng)),'created_at':pd.date_range('2020-01-01', '2020-12-31', freq='D')})df輸出是:       col      created_at0   1.764052    2020-01-011   0.400157    2020-01-022   0.978738    2020-01-033   2.240893    2020-01-044   1.867558    2020-01-05... ... ...361 0.003771    2020-12-27362 0.931848    2020-12-28363 0.339965    2020-12-29364 -0.015682   2020-12-30365 0.160928    2020-12-31所以問題是我想過濾數據框以顯示過去 6 個月到月初的數據。例如,如果今天(2020 年 10 月 23 日),我希望數據框提供 4 月 1 日以來的結果。如果是 11 月,則無論 11 月的日期如何,第一個日期結果都應為 5 月 1 日。關于如何做到這一點有什么想法嗎?這應該自動運行,所以類似:df = df[(df.created_at.dt.month >= datetime.datetime.utcnow().month)                    & (df.created_at.dt.year==datetime.datetime.utcnow().year)]不會工作。謝謝!?。?
查看完整描述

1 回答

?
鴻蒙傳說

TA貢獻1865條經驗 獲得超7個贊

您可以使用 Between 來指定兩個值之間的條件:


today = datetime.today()

target = today - timedelta(days=180)

df = df[lambda x: x['created_at'].between(datetime(target.year,target.month,1),today)]



查看完整回答
反對 回復 2023-12-29
  • 1 回答
  • 0 關注
  • 160 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號