簡體   English   中英

如何使用熊貓檢查時間序列是否屬於去年?

[英]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.yearTimestamp.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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM