У меня есть DataFrame с количеством уровней индекса и количеством столбцов. У меня есть поле, которое я знаю, это либо имя уровня индекса, либо имя столбца, но я не знаю, какой именно. Я хочу отфильтровать мой DataFrame в этом поле. Если бы поле было уровнем индекса, я бы сделал df[df.index.get_level_values(field) == 0]
, а если бы это был столбец, я бы сделал df[df[field] == 0]
, но так как я не знаю, что это, я застрял. Есть ли способ, позволяющий пандам выяснить, есть ли имя поля в индексе или столбцах, и захватить индекс / серию соответствующим образом?
Я знаю, что могу сбросить индекс и затем вернуть его обратно, но это кажется глупым и потенциально проблематичным, если не все уровни индекса названы.