Из исходного мультииндексного DataFrame, который выглядит следующим образом:
import numpy as np
import pandas as pd
arrays = [np.array(['bar', 'bar', 'baz', 'baz', 'foo', 'foo', 'qux', 'qux']),np.array(['one', 'two', 'one', 'two', 'one', 'two', 'one', 'two'])]
df = pd.DataFrame(np.random.randn(8, 4), index=arrays)
print(df)
0 1 2 3
bar one -1.111899 -0.673956 -0.045719 -0.654951
two 0.761249 1.009988 1.718598 1.461674
baz one -1.128029 0.360159 -0.004877 -0.725785
two -0.007996 1.183093 1.651100 -1.408199
foo one 0.935349 0.816100 1.043749 -0.575600
two 0.986057 0.790675 -0.302731 1.434262
qux one 0.564661 -2.821966 0.650187 -0.176112
two -1.353135 0.192120 -0.314343 -1.242303
Мне нужен только первый столбец, который я извлекаю следующим образом:
series = df[0]
print(series)
bar one -1.111899
two 0.761249
baz one -1.128029
two -0.007996
foo one 0.935349
two 0.986057
qux one 0.564661
two -1.3531354
type(series)
<class 'pandas.core.series.Series'>
Как я могу повернуть эту серию в следующий DataFrame:
bar baz foo qux
one -1.111899 -1.128029 0.935349 0.564661
two 0.761249 -0.007996 0.986057 -1.353135
Обратите внимание, что я не настаиваю на промежуточном втором шаге. Важно только получить результирующий DataFrame.