Я думаю, вам нужно transpose
от T
, а затем, если необходимо, изменить имена столбцов, добавить понимание списка:
Примечание:
Двойной groupby+sum
не требуется, достаточно одного раза, потому что здесь агрегируется та же самая агрегатная функция, здесь sum
.
df = pd.DataFrame(salary_List)
newdf = df.groupby(pd.Grouper(key='date', freq='1M')).sum().T
#python 3.6+
newdf.columns = [f'Month{x}' for x in range(1, len(newdf.columns) + 1)]
#python bellow
#newdf.columns = ['Month{}'.format(x) for x in range(1, len(newdf.columns) + 1)]
print (newdf)
Month1 Month2 Month3 Month4 Month5 \
Balance before Salary 27.2 88.2 176.48 48.48 241.48
Salary 15300.0 15300.0 14783.00 16249.00 14448.00
Month6
Balance before Salary 49.48
Salary 15663.00