Python 使用固定间隔(3小时)数据生成连续时间(1小时)数据

Python 使用固定间隔(3小时)数据生成连续时间(1小时)数据,python,dataframe,Python,Dataframe,这是我的部分数据: Day\u Data Hour\u Data WIN\u D WIN\u TEM RHU PRE\u 1h 1 0 58 1 22 78 0 1 3 32 1.9 24.6 65 0 1 6 41 3.2 25.6 59 0 1 9 20 0.8 24.8 64 0 1 12 44 1.7 22.7 76 0 1 15 118 0.7 20.2 92 0 1 18 70

这是我的部分数据:

Day\u Data Hour\u Data WIN\u D WIN\u TEM RHU PRE\u 1h
1   0   58  1   22  78  0
1   3   32  1.9 24.6    65  0
1   6   41  3.2 25.6    59  0
1   9   20  0.8 24.8    64  0
1   12  44  1.7 22.7    76  0
1   15  118 0.7 20.2    92  0
1   18  70  2.6 20.2    94  0
1   21  76  3.4 19.9    66  0
2   0   76  3.8 19.4    58  0
2   3   75  5.8 19.4    47  0
2   6   81  5.1 19.5    42  0
2   9   61  3.6 17.4    48  0
2   12  50  0.9 15.8    46  0
2   15  348 1.1 14.5    52  0
2   18  357 1.9 13.5    60  0
2   21  333 1.2 12.4    74  0

我想生成这样的额外数据:

填充值是上一个值和下一个值的平均值

我该怎么做? 谢谢大家!


还有,@jdy谢谢提醒,这就是我所做的:

data['time']='2017'+'-'+'10'+'-'+data['Day_Data'].map(int).map(str)+' 
'+data['Hour_Data'].map(int).map(str)+':'+'00'+':'+'00'
from datetime import datetime 
data.loc[:,'Date']=pd.to_datetime(data['time'])
data=data.drop(['Day_Data','Hour_Data','time'],axis=1)
index = data.set_index(data['Date'])
data=index.resample('1h').mean()
输出:

2017-10-01 00:00:00 58.0    1.0 22.0    78.0    0.0
2017-10-01 01:00:00 NaN NaN NaN NaN NaN
2017-10-01 02:00:00 NaN NaN NaN NaN NaN
2017-10-01 03:00:00 32.0    1.9 24.6    65.0    0.0
2017-10-01 04:00:00 NaN NaN NaN NaN NaN
2017-10-01 05:00:00 NaN NaN NaN NaN NaN
2017-10-01 06:00:00 41.0    3.2 25.6    59.0    0.0
2017-10-01 07:00:00 NaN NaN NaN NaN NaN
2017-10-01 08:00:00 NaN NaN NaN NaN NaN
2017-10-01 09:00:00 20.0    0.8 24.8    64.0    0.0
2017-10-01 10:00:00 NaN NaN NaN NaN NaN
2017-10-01 11:00:00 NaN NaN NaN NaN NaN
2017-10-01 12:00:00 44.0    1.7 22.7    76.0    0.0
2017-10-01 13:00:00 NaN NaN NaN NaN NaN
2017-10-01 14:00:00 NaN NaN NaN NaN NaN
2017-10-01 15:00:00 118.0   0.7 20.2    92.0    0.0
2017-10-01 16:00:00 NaN NaN NaN NaN NaN
2017-10-01 17:00:00 NaN NaN NaN NaN NaN
2017-10-01 18:00:00 70.0    2.6 20.2    94.0    0.0
2017-10-01 19:00:00 NaN NaN NaN NaN NaN
2017-10-01 20:00:00 NaN NaN NaN NaN NaN
2017-10-01 21:00:00 76.0    3.4 19.9    66.0    0.0
2017-10-01 22:00:00 NaN NaN NaN NaN NaN
2017-10-01 23:00:00 NaN NaN NaN NaN NaN
2017-10-02 00:00:00 76.0    3.8 19.4    58.0    0.0
2017-10-02 01:00:00 NaN NaN NaN NaN NaN
2017-10-02 02:00:00 NaN NaN NaN NaN NaN
2017-10-02 03:00:00 75.0    5.8 19.4    47.0    0.0
2017-10-02 04:00:00 NaN NaN NaN NaN NaN
2017-10-02 05:00:00 NaN NaN NaN NaN NaN
2017-10-02 06:00:00 81.0    5.1 19.5    42.0    0.0

但是,我不知道如何用最后一个值和下一个值的平均值填充NaN。

您尝试了什么?理想情况下,我们希望看到一个。感谢提醒,我试图在发布问题的同时做一些事情来解决我的问题。所以,我把它添加到了上面的问题中。而且,我解决这个问题的想法可能很笨拙,所以,期待着一个更好的答案。