У меня есть фрейм данных, который выглядит следующим образом:
d c d
1 0 0
0 1
a b
1 5 2 9 9 1
2 6 6 8 0 5
3 7 8 7 8 7
Мне нужны только столбцы:
- те, которые имеют
c
в level=0
- те с
d
в level=0
и в списке [0,1]
в level=2
(обратите внимание, что в этом случае это только [0,1]
в кадре данных, но я хочу, чтобы он все еще работал в общем случае большегокадр данных с другими бесполезными столбцами)
Я пробовал что-то вроде df.loc[:,idx[['c','d'],0]]
, но не смог заставить его работать.
Код генератора:
df = pd.DataFrame({'a':[1,2,3],'b':[5,6,7],('c','',''):[9,0,8], ('d',0,1):[1,5,7], ('d',0,0):[9,8,7], ('d',1,''):[2,6,8]})
df = df.set_index(['a','b'])
df.columns = pd.MultiIndex.from_tuples(df.columns)