Как я могу повернуть pandas .dataframe, используя имена colmun - PullRequest
2 голосов
/ 09 июля 2020

У меня есть следующий DataFrame с Timestamp в качестве индекса:

Timestamp 40_x 40_y 40_z 60_x 60_y 60_z 80_x 80_y 80_z
    10:00    a    b    c    d    e    f    g    h    i
    10:10   a2   b2   c2   d2   e2   f2   g2   h2   i2

Я хочу повернуть его в следующий DataFrame:

                  x   y   z
Timestamp range               
10:00        40   a   b   c
10:00        60   d   e   f
10:00        80   g   h   i
10:10        40  a2  b2  c2
10:10        60  d2  e2  f2
10:10        80  g2  h2  i2

У меня есть список диапазоны: [40, 60, 80], и может содержать гораздо больше значений.

1 Ответ

5 голосов
/ 09 июля 2020

Как насчет MultiIndex, затем stack?

df.columns = df.columns.str.split('_',expand=True)

print(df)

           40          60          80        
            x   y   z   x   y   z   x   y   z
Timestamp                                    
10:00       a   b   c   d   e   f   g   h   i
10:10      a2  b2  c2  d2  e2  f2  g2  h2  i2
df1 = df.stack(0)

print(df1)

               x   y   z
Timestamp               
10:00     40   a   b   c
          60   d   e   f
          80   g   h   i
10:10     40  a2  b2  c2
          60  d2  e2  f2
          80  g2  h2  i2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...