用相关值填充数据框NULL单元格



我需要用已经被ColA组填充的值填充Null值

原始df:

ColA    ColB     ColC
cat      20      blue
cat      28      yellow
fish     32       red
fish     NaN      NaN
fish     NaN      NaN
dog      3       black
dog      311      tan
dog      755     white
frog     NaN      NaN
frog     NaN      NaN
frog     400      green
frog     NaN      NaN

不考虑每列中已填充单元格的行,但是在存在空值的地方,我想用ColA组已填充的相关值填充这些单元格,例如:

的df:

ColA    ColB     ColC
cat      20      blue
cat      28      yellow
fish     32       red
fish     32       red
fish     32       red
dog      3       black
dog      311     tan
dog      755     white
frog     400     green
frog     400     green
frog     400     green
frog     400     green

任何想法都是赞赏的。谢谢!

尝试goupby前填充(ffill)和后填充(bfill)

df[['ColB', 'ColC']] = df.groupby('ColA').ffill().bfill()
ColA   ColB    ColC
0    cat   20.0    blue
1    cat   20.0  yellow
2   fish   32.0     red
3   fish   32.0     red
4   fish   32.0     red
5    dog    3.0   black
6    dog    3.0     tan
7    dog    3.0   white
8   frog  400.0   green
9   frog  400.0   green
10  frog  400.0   green
11  frog  400.0   green

最新更新