Как мы можем отключить элементы во фрейме данных, транспонировать строки в столбцы и строку синтаксического анализа для получения дат

#python #python-3.x #pivot

#python #python-3.x #сводная

Вопрос:

У меня есть фрейм данных, который выглядит следующим образом..

 RCFD0071                                RCFD0081                                 RCFD0426                                 RCFD1350                             RCFD1754                        RCFD1773                           RCFD2130                                 RCFD2143                               RCFD2145                                   file
INT-BEARING BALS DUE FRM DEP INSTS      NONINTEREST-BEARING BALSamp;CURRamp;COIN       OTHER IDENTIFIABLE INTANGIBLE ASSETS     FED. FUNDS SOLD amp; SECURITIES RS.     HELD-TO-MATURITY SECURITIES     AVAILABLE-FOR-SALE SECURITIES      INVEST. IN UNCONSOLIDATED SUBS amp; CO.     Invest in Unconsolidated Subsid        PREMISESamp;FIXED ASSETS(INCL CAP LSES)       FFIEC CDR Call Schedule RC0 03312001.txt
1457                                    975697                                   112745                                   161346                               15358                           3510649                            6987                                     0                                      450706                                     FFIEC CDR Call Schedule RC0 03312001.txt
25560                                   292236                                   123288                                   585000                               0                               3080606                            0                                        0                                      105521                                     FFIEC CDR Call Schedule RC0 06302001.txt
17983011                                897105                                   29763                                    15060119                             1347143                         15373763                           22733                                    0                                      570144                                     FFIEC CDR Call Schedule RC0 06302001.txt
1016                                    706018                                   0                                        1166892                              0                               1185021                            0                                        0                                      253232                                     FFIEC CDR Call Schedule RC0 09312001.txt
 

Я пытаюсь выяснить, как сделать следующее с помощью UnPivot.

  1. транспонировать вторую строку в первый столбец
  2. транспонировать первую строку во второй столбец
  3. проанализируйте даты конца квартала и используйте в качестве заголовков
  4. суммируйте все элементы строки по дате и агрегируйте по дате

Вот что я хочу получить, когда все будет сделано.

введите описание изображения здесь

У меня более 80 полей с данными; я не могу сделать это вручную.

Я знаю, как выполнить обычную блокировку, но я не знаю, как перенести вторую строку и переместить ее в первый столбец, перенести первую строку и переместить ее во второй столбец. Кроме того, я не знаю, как извлекать имена файлов и использовать их в качестве заголовков. Возможно ли это с помощью Python? Во фрейме данных намного больше столбцов и строк, поэтому сделать это вручную нереально.

Ответ №1:

Вот шаги 1 и 2

 r1 = df.loc[0].copy()
df.loc[0] = df.columns
df.columns = r1

df = df.T
 

Предполагается ли, что шаг 3 является переименованием?
О каких датах вы говорите для шага 4?
В любом случае я думаю, что шаги 3 и 4 должны быть отдельным вопросом, чтобы вы могли добавить больше деталей.

Комментарии:

1. Кажется, я понимаю, что вы здесь делаете, но когда я запускаю этот код, я получаю следующую ошибку: ValueError: несоответствие длины: ожидаемая ось содержит 101 элемент, новые значения содержат 73 элемента. Мне нужно провести еще немного исследований по этому вопросу. Спасибо.