我在Pandas中确实有一个大型数据集(大约800万行x 25列),我正在努力以一种高效的方式进行一项操作。
这是我的数据集的样子:
temp size
location_id hours
135 78 12.0 100.0
79 NaN NaN
80 NaN NaN
81 15.0 112.0
82 NaN NaN
83 NaN NaN
84 14.0 22.0
NaN
值。基本上,小时79
的值将从78
和81
的值中得出。对于此示例,temp
的{{1}}值为79
(基本外推)。13.0
小时会被填满,其余的将有78, 81, 84 (multiples of 3)
个小时。情况总是如此。在NaN
之间的几个小时内都是这样。78-120
答案 0 :(得分:1)
我相信您正在寻找interpolate
:
print (df.interpolate())
temp size
location_id hours
135 78 12.000000 100.0
79 13.000000 104.0
80 14.000000 108.0
81 15.000000 112.0
82 14.666667 82.0
83 14.333333 52.0
84 14.000000 22.0