我有一个每日数据的pandas dataframe,如下所示:
gpi_data['sig']
Out[34]:
2007-01-02 -8.963545
2007-01-03 -8.671357
2007-01-03 -8.996480
2007-01-04 -8.835958
2007-01-05 -8.785034
2019-12-28 -8.328209
2019-12-29 -8.380242
2019-12-30 -8.532246
2019-12-30 -8.532573
2019-12-31 -8.345356
Name: sig, Length: 6368, dtype: float32
然后我想计算变量sig
的气候异常。例如,对于2007-01-02
中的数据,我需要计算DOY(一年中的第几天)01-02
在2007
,2008
,...,2019
年的mean
值。假设平均值为X
,则“气候异常”定义为-8.963545 - X
。那我怎么做
我只知道我可以使用如下所示的gpi_data.groupby(gpi_data.index.dayofyear).mean()
来计算每个DOY上的X
值。
但是如何将gpi_data
中的每个时间戳与DOY匹配呢?例如,将数据2007-01-02 -8.963545
匹配到DOY 2 -8.693721
?谢谢!
我想知道,如果我得到了一个模型预测的异常,比如gpi_data_predicted
,我如何将异常添加到原始气候学中,以“反规范化”数据,从而获得最终结果?谢谢!
1条答案
按热度按时间bxjv4tth1#
可以使用
groupby.transform('mean')
:输出: