
248
8
章 データラングリング:連結、結合、変形
2 12 14 16
In [28]: frame.sum(level='color', axis=1)
Out[28]:
color Green Red
key1 key2
a 1 2 1
2 8 4
b 1 14 7
2 20 10
この処理の内部では、
pandas
の
groupby
機構が活用されています。
groupby
機構についてはこの本
の後の章で詳しく解説します。
8.1.3
データフレームの列をインデックスに使う
データフレームの特定の(
1
つ以上の)列の値を行インデックスとして使いたいことはよくあります。
逆に、行インデックスをデータフレームの列に変換したい場合もあるでしょう。次のデータフレームを
例として考えてみましょう。
In [29]: frame = pd.DataFrame({'a': range(7), 'b': range(7, 0, -1),
....: 'c': ['one', 'one', 'one', 'two', 'two',
....: 'two', 'two'],
....: 'd': [0, 1, 2, 0, 1, 2, 3]})
In [30]: frame
Out[30]:
a b c d
0 0 7 one 0
1 1 6 one 1
2 2 5 one 2
3 3 4 two 0
4 4 3 two 1
5 5 2 two 2
6 6 1 two 3
データフレームの
set_index
メソッドは、指定した
1
つ以上の列をインデ ...