У меня довольно большой DataFrame, скажем 600 индексов, и я хочу использовать критерии фильтра для создания уменьшенной версии DataFrame, где критерии верны. Из проведенного мною исследования хорошо работает фильтрация, когда вы применяете выражения к данным и уже знаете индекс, с которым работаете. Однако я хочу применить критерии фильтрации к индексу. См. Пример ниже.
MultiIndex выделен жирным шрифтом, имена MultiIndex: itali c.
Я бы хотел примените следующие критерии (или что-то в этом роде) следующим образом:
df = df[MultiIndex.query('base == 115 & Al.isin(stn)')]
Затем, возможно, сделайте что-то вроде этого:
df = df.transpose()[MultiIndex.query('Fault.isin(cont)')].transpose
В результате:
Я думаю, что в основном я пытаюсь создать логический список для маскировки MultiIndex. Если есть быстрый способ применить запрос pandas к 2d списку? это было бы приемлемо. На данный момент кажется, что есть возможность взять MultiIndex, преобразовать его в DataFrame, а затем я могу применить фильтрацию, как я хочу получить массив TF. Я обеспокоен тем, что это будет медленно, хотя.