【问题标题】:Difference between multi year timeseries and it's 'standard year'多年时间序列与其“标准年”之间的差异
【发布时间】:2015-05-12 17:05:41
【问题描述】:

假设我有一定年数的时间序列:

rng = pd.date_range(start = '2001-01-01',periods = 5113)
ts = pd.TimeSeries(np.random.randn(len(rng)), rng)

我可以通过以下方式计算它的标准年(所有年份中每一天的平均值):

std = ts.groupby([ts.index.month, ts.index.day]).mean()

现在我想知道如何从这个标准年份中减去我的多年时间序列,以便得到一个时间序列来显示哪些天低于或高于它的标准。

【问题讨论】:

    标签: python datetime numpy pandas time-series


    【解决方案1】:

    您可以使用groupby 执行此操作,只需从该组的值中减去每个组的平均值:

    average_diff = ts.groupby([ts.index.month, ts.index.day]).apply(
        lambda g: g - g.mean()
    )
    

    【讨论】:

    • 感谢您的回答!似乎它正在工作。那些lambda 似乎在这些事情上做得很好
    猜你喜欢
    • 2015-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-20
    • 2022-01-12
    • 1970-01-01
    相关资源
    最近更新 更多