IIUC, предположим, у вас есть этот MCVE:
df = pd.DataFrame({'ABC1': [1,2,3],
'XYZ1': [10,20,30],
'ABC2': [1,2,3],
'XYZ9': [100,200,300]})
ABC1 XYZ1 ABC2 XYZ9
0 1 10 1 100
1 2 20 2 200
2 3 30 3 300
И вы хотите groupby
первые три символа ваших столбцов.
Затем вы можете группировать против axis=1
, как показано ниже
df.groupby(df.columns.str[:3],axis=1).sum()
ABC XYZ
0 2 110
1 4 220
2 6 330