Python 首先将_与ffill组合用于baseDf,将fillna组合用于additionalDf

Python 首先将_与ffill组合用于baseDf,将fillna组合用于additionalDf,python,pandas,Python,Pandas,我需要先结合一个基本DF和一个附加DF与熊猫。 如何将ffill()用于baseDf,将fillna(-1)用于第二个 例如: baseDf: 附加DF: val 3 400 5 150 7 60 我想得到的是: qty total val 1 10 10 -1 2 5 15 -1 3 5 15 400 4 4 19 -1 5 4 19 150 6 8 27

我需要先结合一个基本DF和一个附加DF与熊猫。 如何将ffill()用于baseDf,将fillna(-1)用于第二个


例如: baseDf:

附加DF:

     val
3    400
5    150
7     60
我想得到的是:

   qty total   val
1   10    10    -1
2    5    15    -1
3    5    15   400
4    4    19    -1
5    4    19   150
6    8    27    -1
7    8    27    60
8    2    29    -1
但如果我写:

baseDf.combine_first(additionalDf).ffill().fillna(-1)
我得到:

   qty total   val
1   10    10    -1
2    5    15    -1
3    5    15   400
4    4    19   400
5    4    19   150
6    8    27   150
7    8    27    60
8    2    29    60

谢谢

只需更改
fillna
fffill

baseDf.combine_first(additionalDf).fillna({'val':-1}).ffill()
Out[360]: 
    qty  total    val
1  10.0   10.0   -1.0
2   5.0   15.0   -1.0
3   5.0   15.0  400.0
4   4.0   19.0   -1.0
5   4.0   19.0  150.0
6   8.0   27.0   -1.0
7   8.0   27.0   60.0
8   2.0   29.0   -1.0

只需更改
fillna
fffill

baseDf.combine_first(additionalDf).fillna({'val':-1}).ffill()
Out[360]: 
    qty  total    val
1  10.0   10.0   -1.0
2   5.0   15.0   -1.0
3   5.0   15.0  400.0
4   4.0   19.0   -1.0
5   4.0   19.0  150.0
6   8.0   27.0   -1.0
7   8.0   27.0   60.0
8   2.0   29.0   -1.0

杰出的非常感谢@Wen Ben,它工作得很好!我以前尝试过这个方法,但是使用了fillna(),它用-1填充了所有列中缺少的值。。。现在没事了!杰出的非常感谢@Wen Ben,它工作得很好!我以前尝试过这个方法,但是使用了fillna(),它用-1填充了所有列中缺少的值。。。现在没事了!