Ich habe einen Datenrahmen, der wie folgt aussieht:Subselect von Spalten in Multiindex Pandas Dataframe
u1 u2 u3 u4 u5 u6
level0 level1
foo1 x1 0 1 0 0 0 0
x2 0 1 1 0 1 1
foo2 x3 0 1 0 1 0 1
x4 1 0 0 0 1 1
foo3 x5 1 0 1 0 0 0
x6 0 1 1 1 0 0
foo4 x7 1 0 0 1 0 1
x8 0 1 1 1 0 0
Ich mag für die u3==1
nur die Indizes Unterauswahl. So, wie Ausgang, sollte ich so etwas bekommen:
u1 u2 u3 u4 u5 u6
level0 level1
foo1
x2 0 1 1 0 1 1
foo2
foo3 x5 1 0 1 0 0 0
x6 0 1 1 1 0 0
foo4
x8 0 1 1 1 0 0
ich versucht habe zu tun:
idx = pd.IndexSlice
df.loc[idx[:,:],'u2']==1
die gibt:
level0 level1
foo1 x1 True
x2 True
foo2 x3 True
x4 False
foo3 x5 False
x6 True
foo4 x7 False
x8 True
aber ich weiß nicht, wie diese zu verwenden, um den ursprünglichen Datenrahmen zu indizieren.
Jede Hilfe wird geschätzt.
Große Antwort! Sehr deutlich. Quick followup: Wie kann ich alle 'u?' Für die 'x1 == 1' und' x3 == 1' auswählen? – reckoner
Sehr klare Antwort. – reckoner