[英]How to check if the time-series belongs to last year using pandas?
我正在制作一個應用程序,用戶可以在其中上傳他們的時間序列 CSV 數據。 我希望用戶總是上傳去年的數據(在 2022 年,時間序列應該是 2021 年;在 2023 年,數據應該是 2022 年等等)因為我必須檢查數據是否來自最后年與否。
有沒有一種方法可以在讀取 csv 時使用 pandas 進行檢查(我通過執行pd.read_csv(my_file)
讀取 csv )?
時間序列樣本
dates values
0 2021-01-01 01:00:00 371.428
1 2021-01-01 02:00:00 390.194
2 2021-01-01 03:00:00 349.924
3 2021-01-01 04:00:00 342.886
4 2021-01-01 05:00:00 331.157
.
.
.
.
8779 2021-12-31 20:00:00 515.307
8780 2021-12-31 21:00:00 432.811
8781 2021-12-31 22:00:00 421.082
8782 2021-12-31 23:00:00 394.886
8783 2022-01-01 00:00:00 373.773
最后一行將始終是當前年份的00:00
我認為不,需要先讀取值。 您可以先將值轉換為 DataFrame,然后通過Series.dt.year
與Timestamp.year
減去1
比較年份,並測試所有值是否匹配使用Series.all
:
df = pd.read_csv(my_file, parse_dates=['dates'])
test = df['dates'].dt.year.iloc[:-1].eq(pd.Timestamp('now').year - 1).all()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.