Как удалить столбцы, в которых уровни мультииндексов равны NaN (без значения) из кадра данных - PullRequest
0 голосов
/ 18 октября 2018

Я пытаюсь удалить столбцы из кадра данных с помощью Multiindex, так как для некоторых столбцов мои уровни равны NaN (null).Я пытался использовать dropna (), но он работает только для строк, которые я предполагаю: enter image description here

dataframe называется 'test' Когда я выполняю test.dropna() не работает.У меня 15 уровней с идентификаторами:

names=['ID14', 'ID13', 'ID12', 'ID11', 'ID10', 'ID9', 'ID8', 'ID7', 'ID6', 'ID5', 'ID4', 'ID3', 'ID2', 'ID1', 'ID0'])

У вас есть какие-либо предложения, как указать, чтобы удалить целые столбцы с нулевыми значениями в Multiindex (все 15 уровней), а также соответствующие строки?

Заранее спасибо!(Я новичок)

Ответы [ 2 ]

0 голосов
/ 18 октября 2018

Спасибо всем!На данный момент я не нашел лучшего способа, чем просто перенести мой фрейм данных и чем удалить строки, которые являются NaN в индексе ... но это сработало:

test_transposed = test.T
old_idx = test_transposed.index.names
my_new_df = test_transposed.reset_index().dropna().set_index(old_idx)
new_dataset = my_new_df.T
0 голосов
/ 18 октября 2018

Попробуйте сбросить индекс и снова переиндексировать, как это:

old_idx = df.index.names
my_new_df = df.reset_index().dropna().set_index(old_idx)

Это должно быть в состоянии решить это, надеюсь, это поможет как-то.

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