簡體   English   中英

獲取基於日期、周、月的平均數據

[英]Get average data based on date, week, month

我有一個數據集,其中包括工廠工人三年的產出數據。 現在我想根據日期、周、月獲得平均輸出。 問題是日期格式就像 %d.%m.%Y (day-month-year)。 我的問題是如何在獲得預期輸出的同時保持日期格式不變。

我的數據集是這樣的(每天有很多值。)

date         output 
1.1.2017     261
2.1.2017     152 (Jan.02,2017)
17.1.2017    256
17.1.2017    261
18.1.2017    193
18.1.2017    462
1.2.2017     212 (Feb.1,2017)
3.2.2017     266 (Feb.3,2017)

....


1.3.2018    360

我得到的錯誤消息是這樣的:時間數據“2017-01-01”與格式“%d.%m.%Y”(匹配)不匹配。 僅供參考,當我讀取數據集時,我的代碼是這樣的

df['date'] = pd.to_datetime(df['date'],format='%d.%m.%Y').dt.date
df.groupby(['date'],as_index=False).mean()

我嘗試通過谷歌搜索不同的解決方案來解決它。 但我無法得到預期的結果。 輸出在日期和月份之間完全混淆。例如,1.2.2017(2017 年 1 月 2 日)被視為(2017 年 2 月 1 日)。我該如何解決? 謝謝!

您的代碼看起來不錯,實際上至少對於前四個數據記錄運行良好。 這里的問題是日期格式與您報告的錯誤不一致。 就像其他人指出的那樣,讓熊貓為您找出格式可以解決問題,即df["date"]=pd.to_datetime(df["date"]) 但我只是覺得這有點棘手或危險。 我想建議您在對它們進行任何分析之前使用 Python 中的字符串操作統一日期格式。 希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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