根据上一个和下一个NaN值填充NaN值

时间:2020-09-08 11:12:27

标签: pandas numpy

假设我有一个数据框,其中某些列(START和END)包含缺失值

       GROUP  START  END
0      1      2.0    5.0
1      1      5.0    7.0
2      2      3.0    6.0
3      2      NaN    NaN
4      2      NaN    NaN
5      2      8.0    4.0

我希望根据NaN列上的上一个非END值和NaN列上的下一个非START值为缺失值生成值,例如这个:

NaN中的

(row 3, SATRT COLUMN)将采用END中前row 2列的值

Nan中的

(row 3, START COLUMN)将由以下公式填充:(row 3, SATRT COLUMN) + [(row 2, END COLUMN) - (row 5, START COLUMN)] / 2

* 2:这里的两个代表NaN的2行

所以结果应该是:

   GROUP  START  END
0      1      2    5
1      1      5    7
2      2      3    6
3      2      6    7
4      2      7    8
5      2      8    4

我需要帮助。

谢谢。

0 个答案:

没有答案