簡體   English   中英

計算時間序列的均值和標准差

[英]Calculate mean and standard deviation in a time-series

我有以下 dataframe:

    COD     ACT     DATE
0   5713    1.0     2020-07-16
1   5713    1.0     2020-08-11
2   5713    1.0     2020-06-20
3   5713    1.0     2020-06-19
4   5713    1.0     2020-06-01
5   23369   1.0     2020-07-17
6   23369   1.0     2020-08-07
7   23369   1.0     2020-09-02
8   23369   1.0     2020-11-22
9   32012   1.0     2020-06-02
10  32012   1.0     2020-07-26

我想計算整個時間序列中每個 COD 的平均值和標准差。 以前我是這樣計算的:

df['MEAN'] = df.groupby("COD")["ACT"].transform("mean")
df['STD'] = df.groupby("COD")["ACT"].transform("std")

但這計算了 ACT 的初始時間戳和 ACT 的最終時間戳的時間跨度的平均值(例如 5 個月內的 3 次 ACT - 而不是 8 個月)。 ACT 是活動的時間戳,但整個時間序列有 8 個月。 我想計算整個 8 個月的平均值和標准差。 誰能幫我?

您正在尋找的是在 groupby 上申請 function。 確保將DATE列轉換為datetime時間 object。

df.groupby("COD").apply(lambda x: x["ACT"].mean())

這是一個更清晰的屏幕截圖。 我還認為對每個COD進行一個月的明智總和和平均值分析可能會有所幫助。 在此處輸入圖像描述

暫無
暫無

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

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