У меня есть проблема, когда использование agg (['sum', 'count']) выводит "подколонки", а не новые, эксклюзивные столбцы.
Это проблема, потому что мне нужно экспортировать результаты в CSV для загрузки Salesforce, и подколонки портят форматирование.
Итак, сначала есть этот фрейм данных:
Order ID | Company ID | Company Name | Product | Date | Units in order | Units delivered | Platform
1 J01 John's Bubblegum 01-01-20 100 100 On Prem
2 J01 John's Bubblegum 01-01-20 200 150 On Prem
3 M01 Mary's Jawbreakers 01-01-20 100 100 Online
После этого я создаю подмножество DF из это
Subset = df[['Company ID', 'Company Name', 'Platform', 'Date', 'Units in order', 'Units delivered']]
Затем я перехожу к группе и применяю агрегат к подмножеству, чтобы получить сумму столбцов единиц и количество (чтобы узнать, сколько заказов было сделано)
Subset = Subset.groupby(['Company ID', 'Company Name', 'Platform', 'Date'])['Units in order', 'Units delivered'].agg(['sum', 'count']).reset_index()
Однако это портит индексы столбцов. Вместо вывода
Company ID | Company Name | Platform | Date | Sum of UIO | Count of UIO | Sum of UD | Count of UD
Вывод
Company ID | Company Name | Platform | Date | Sum of UIO | Units in order | Units delivered |
sum | count sum | count
Эффективное создание 4 "подколонок". Конечно, при экспорте в CSV создается «формат», который не читается должным образом чем-либо, кроме pandas.
Как решить эту проблему и почему она происходит? Сначала я подумал, что это произошло из-за конфликта имен, так как у меня было 2 столбца суммы и 2 числа, но я попытался переименовать их, но это не помогло решить проблему.