Интересно, есть ли способ группировать строки, а затем условные агрегированные группы. Спасибо
например, для colA есть A, он должен установить colB для второго A для теста1 и суммы colC
colA colB colC
A test1 5
A None 6
B test1 4
C test1 5
C test3 4
D test4 5
D None 4
ожидаемый результат
colA colB colC
A test1 11
B test1 4
C test1 5
C test3 4
D test4 9
IIUC, вы можете использовать groupby и заполнять, а затем снова группировать и суммировать
df['colB'] = df.groupby('colA').colB.ffill().bfill()
df.groupby(['colA','colB'], as_index = False).sum()
colA colB colC
0 A test1 11
1 B test1 4
2 C test1 5
3 C test3 4
4 D test4 9