У меня есть пандас DataFrame, который выглядит следующим образом:
| Id | Filter 1 | Filter 2 | Filter 3 |
|----|----------|----------|----------|
| 25 | 0 | 1 | 1 |
| 25 | 1 | 0 | 1 |
| 25 | 0 | 0 | 1 |
| 30 | 1 | 0 | 1 |
| 31 | 1 | 0 | 1 |
| 31 | 0 | 1 | 0 |
| 31 | 0 | 0 | 1 |
Мне нужно транспонировать эту таблицу, добавить столбец «Имя» с именем фильтра и суммировать значения столбца Фильтры. Таблица результатов должна быть такой:
| Id | Name | Summ |
| 25 | Filter 1 | 1 |
| 25 | Filter 2 | 1 |
| 25 | Filter 3 | 3 |
| 30 | Filter 1 | 1 |
| 30 | Filter 2 | 0 |
| 30 | Filter 3 | 1 |
| 31 | Filter 1 | 1 |
| 31 | Filter 2 | 1 |
| 31 | Filter 3 | 2 |
Единственное решение, которое я до сих пор принимал, - это использовать функцию apply для группы по столбцу Id, но этот метод слишком медленный для моего случая - набор данных может содержать более 40 столбцов и 50_000 строк, как я могу это сделать с пандами нативные методы? (например, Pivot, Transpose, Groupby)