Pandas: Multiindex Level als Serie erhalten

Ich habe einen Datenrahmen mit mehreren Ebenen, zB:

idx = pd.MultiIndex.from_product((['foo', 'bar'], ['one', 'five', 'three' 'four']),
                                 names=['first', 'second'])
df = pd.DataFrame({'A': [np.nan, 12, np.nan, 11, 16, 12, 11, np.nan]}, index=idx).dropna().astype(int)

              A     
first second
foo   five     12
      four     11
bar   one      16
      five     12
      three    11

Ich möchte eine neue Spalte mit der Indexebene "@" erstellesecond, damit ich @ bekom

              A    B  
first second
foo   five     12   five
      four     11   four
bar   one      16   one
      five     12   five
      three    11   three

Ich kann dies tun, indem ich den Index zurücksetze, die Spalte kopiere und dann erneut anwende, aber das scheint etwas runder zu sein.

Ich habe es versuchtdf.index.levels[1], aber das erstellt eine sortierte Liste, behält die Reihenfolge nicht bei.

Wenn es ein einzelner Index wäre, würde ich @ verwenddf.index aber in einem Multiindex, der eine Spalte mit Tupeln erstellt.

Wenn dies anderswo behoben ist, teilen Sie es bitte mit, da ich beim Durchsuchen der Stackoverflow-Archive kein Glück hatte.