Wybór kolumn z pand MultiIndex

Mam DataFrame z kolumnami MultiIndex, które wyglądają tak:

# sample data
col = pd.MultiIndex.from_arrays([['one', 'one', 'one', 'two', 'two', 'two'],
                                ['a', 'b', 'c', 'a', 'b', 'c']])
data = pd.DataFrame(np.random.randn(4, 6), columns=col)
data

Jaki jest właściwy, prosty sposób wybierania tylko określonych kolumn (np.['a', 'c'], a nie zasięg) z drugiego poziomu?

Obecnie robię to w ten sposób:

import itertools
tuples = [i for i in itertools.product(['one', 'two'], ['a', 'c'])]
new_index = pd.MultiIndex.from_tuples(tuples)
print(new_index)
data.reindex_axis(new_index, axis=1)

Jednak nie jest to dobre rozwiązanie, ponieważ muszę się wycofaćitertools, zbuduj kolejny MultiIndex ręcznie, a następnie reindeksuj (a mój aktualny kod jest jeszcze bardziej chaotyczny, ponieważ listy kolumn nie są tak proste do pobrania). Jestem pewien, że muszą być jakieśix lubxs sposób na to, ale wszystko, co próbowałem, spowodowało błędy.

questionAnswers(6)

yourAnswerToTheQuestion