Фиксированный фрейм данных Multindex с колонкой Multindex - PullRequest
0 голосов
/ 12 ноября 2018

Я пытаюсь сложить фрейм данных с несколькими уровнями для значений строк и одним уровнем для значений столбцов.Исходный фрейм данных выглядит следующим образом (где Time - это имя для одного уровня в df.columns):

Time                                      +1hr   +2hr   +3hr   ... 
Cytokine Antibody Peptide Concentration
IFNg     CD28     N4     1uM              0.1    0.2.   0.3.   
TNFa.    CD28.    N4.    1uM              0.2    0.4.   0.6.   
...

И я пытаюсь сложить фрейм данных, чтобы получить вывод, подобный этому:

Cytokine                             IFNg  TNFa  ...
Antibody Peptide Concentration Time
CD28     N4.     1uM           +1hr  0.1.  0.2
CD28     N4.     1uM           +2hr  0.2.  0.4
CD28     N4.     1uM           +3hr  0.3.  0.6
...

К сожалению, df.stack () возвращает это:

Time                                          +1hr  +2hr  +3hr ...
Cytokine Antibody Peptide Concentration Time
IFNg     CD28     N4.     1uM           +1hr  0.1.  na    na
         CD28     N4.     1uM           +2hr  na    0.2.  na
         CD28     N4.     1uM           +3hr  na    na    0.3
TNFa     CD28     N4.     1uM           +1hr  0.2.  na    na
         CD28     N4.     1uM           +2hr  na    0.4.  na
         CD28     N4.     1uM           +3hr  na    na    0.6
...

Несмотря на документацию pandas, в которой говорится, что стек фреймов данных с одноуровневыми столбцами будет выводить серию, я получаю большие данныекадр, когда я пытаюсь сложить (хотя df.columns.nlevels возвращает 1).Когда я удаляю имя уровня столбца (Время), оно работает нормально, но я хотел бы сохранить это. Могу ли я что-нибудь сделать, чтобы стекирование работало правильно?

1 Ответ

0 голосов
/ 12 ноября 2018

Сам разобрался, но подумал, что могу с таким же успехом документировать решение. Если имя отдельного уровня для значений столбца назначается напрямую (например, df.columns.name = 'Time'), укладка работает, как ожидается. Одноуровневые мультииндикаторы не работают с df.stack ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...