Как отредактировать Pandas DataFrame согласно Обязательному шаблону? - PullRequest
0 голосов
/ 27 февраля 2020

This is the Original DataFrame. Edit the Original DataFrame into this Format

Как изменить фрейм данных в первой таблице для формы во второй таблице?

1 Ответ

1 голос
/ 27 февраля 2020

Предположим, ваш df:

    Field   A;mean;k    B;mean;k    A;std;k   B;std;k
0   ct1     1           2           3         1
1   ct2     4           5           6         7

df.set_index('Field',inplace=True)
df.columns = df.columns.str.split(';',expand=True, n=1)

df=df.unstack().swaplevel(0,2).unstack().T

Результат:

Field ct1               ct2
      mean;k    std;k   mean;k  std;k
A     1         3       4       6
B     2         1       5       7

К чтобы увидеть, что на самом деле происходит на каждом шаге, просто печатайте df на каждом шагу.

Вам в основном нужен ваш df, чтобы выглядело так, чтобы вы могли преобразовать его в желаемую форму:

           Field
A  mean;k  ct1      1
           ct2      4
B  mean;k  ct1      2
           ct2      5
A  std;k   ct1      3
           ct2      6
B  std;k   ct1      1
           ct2      7

Swap ваш 0-й уровень со 2-м уровнем, т. е. 1-й столбец (A, B) с третьим (ct1, ct2) столбцом

Field           
ct1    mean;k  A    1
ct2    mean;k  A    4
ct1    mean;k  B    2
ct2    mean;k  B    5
ct1    std;k   A    3
ct2    std;k   A    6
ct1    std;k   B    1
ct2    std;k   B    7

Затем, снова расставив их, вы получите:

                A   B
Field           
ct1   mean;k   1    2
      std;k    3    1
ct2   mean;k   4    5
      std;k    6    7
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...