我试着做一个简单的重采样,在6个月内求和。为了解释我的问题,我创建了一个简单的玩具系列:
import pandas as pd
import numpy as np
series = pd.Series([1,2,5,6], index=[pd.Timestamp('2018-01-01'), pd.Timestamp('2018-06-30'),pd.Timestamp('2018-07-01'), pd.Timestamp('2018-12-31')])
series
2018-01-01 1
2018-06-30 2
2018-07-01 5
2018-12-31 6
dtype: int64
现在我试着在两个半年内重新取样,第一个我想从2018-01-01到2018-06-30和sum 3,第二个我想从2018-07-01到2018-12-31和sum 11。你知道吗
我得到的是:
series.resample('2Q').sum()
2018-03-31 1
2018-09-30 7
2019-03-31 6
Freq: 2Q-DEC, dtype: int64
series.resample('6M', closed='left').sum()
2018-06-30 1
2018-12-31 7
2019-06-30 6
Freq: 6M, dtype: int64
没有一个是我想要的。我看到了其他关于每6个月重新采样(How to resample 6 months)的问题,但没有显示如何防止这种特定行为。你知道吗
这里有一个方法:0表示前半部分,1表示后半部分
我通过将频率更改为季度开始和月份开始来实现,但仍然不理解逻辑:
相关问题 更多 >
编程相关推荐