我有一个Pandas DataFrame,其中索引是一天中每12分钟的日期时间(共120行)。我对数据进行了重新采样,改为每30分钟采样一次。
Time Rain_Rate
1 2014-04-02 00:00:00 0.50
2 2014-04-02 00:30:00 1.10
3 2014-04-02 01:00:00 0.48
4 2014-04-02 01:30:00 2.30
5 2014-04-02 02:00:00 4.10
6 2014-04-02 02:30:00 5.00
7 2014-04-02 03:00:00 3.20
我想取以00, 03, 06, 09, 12, 15 ,18, 和21小时为中心的3小时平均值。我希望平均数包括03:00:00之前的1.5小时(所以是01:30:00)和03:00:00之后的1.5小时(04:30:00)。06:00:00的时间将与03:00:00的平均值重叠(他们都会使用04:30:00)。有什么方法可以用pandas来做这个?我试过一些方法,但都没有用。
-的方法)与您的原始数据进行对比,以确保事情看起来正确。 在这些例子中,我是用Excel做的。resample
dr = pd.date_range('04-02-2014 00:00:00', '04-03-2014 00:00:00', freq='12T', closed='left')
data = np.random.rand(120)
df = pd.DataFrame(data, index=dr, columns=['Rain_Rate'])
df.index.name = 'Time'
#df.head()
Rain_Rate
Time
2014-04-02 00:00:00 0.616588
2014-04-02 00:12:00 0.201390
2014-04-02 00:24:00 0.802754
2014-04-02 00:36:00 0.712743
2014-04-02 00:48:00 0.711766
resample