我有基本的財務 OHLCV 資料。
Datetime Open Volume date
0 2021-08-25 09:30:00-04:00 149.699997 3524920 2021-08-25
1 2021-08-25 09:35:00-04:00 149.699997 1424746 2021-08-25
2 2021-08-25 09:40:00-04:00 149.785004 1248013 2021-08-25
3 2021-08-25 09:45:00-04:00 149.649994 1208242 2021-08-25
4 2021-08-25 09:50:00-04:00 149.486603 1345607 2021-08-25
假設我想選擇某一天的所有示例。
df["Datetime"].eq("2021-08-25")
即使在使用 lt 或 gt 時與字串日期的比較有效,這也不起作用。
所以我創建了日期列
df["date"] = df["Datetime"].dt.date
這個新列還不是 object dtype:
df_n["date"].eq("2021-08-25")
還是不行。
uj5u.com熱心網友回復:
一種解決方案是'remove'時間,這意味著將它們設定為00:00:00by Series.str.normalize,因為顯然大熊貓將字串日期時間與時間戳進行比較:
df["Datetime"].dt.normalize().eq("2021-08-25")
df["Datetime"].dt.floor('d').eq("2021-08-25")
如果需要比較日期,也需要另一側的日期:
from datetime import date
df["Datetime"].dt.date.eq(date(2021,8,25))
uj5u.com熱心網友回復:
使用 strftime 也可以
df1['Datetime']= pd.to_datetime(df1['Datetime'] )
df1[df1['Datetime'].dt.strftime('%Y-%m-%d')=='2021-08-25']
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/363566.html
上一篇:如何將當前日期時間與hh:mm:ss轉換為python中的時間戳?
下一篇:將日期時間用戶輸入存盤在串列中
