Я пытаюсь преобразовать список объектов с несколькими его функциями в информационный блок с именем объекта, функцией и значением. Я считаю, что такая операция называется линеаризацией, однако я не могу найти элегантную функцию для ее получения.
Мои входные данные выглядят так:
INV SUM Part1 Part2
A 10 10 5
B 10 8 8
C 12 12 4
, и я ожидаю получить это:
INV Amt Kind
A 10 SUM
A 10 Part1
A 5 Part2
B 10 SUM
B 8 Part1
B 8 Part2
C 12 SUM
C 12 Part1
C 4 Part2
Это похоже на результат обратной функции XTABS ().
Сложный код, использующий FOR l oop, работает нормально, но требует обновления каждый раз, когда изменяется структура входных данных (т. Е. Столбец дополнительных функций добавлено).
У меня есть надежда, что есть простая функция. Пожалуйста, укажите такую функцию или способ, отличный от FOR l oop. Спасибо.