
490
付録
A
NumPy
:応用編
図A-2 NumPy dtypeのクラス階層構造
A.2
配列操作:応用編
これまで見てきたファンシーインデックス参照、スライシング、真偽値を用いたサブセットの取り出
しといった操作以外にも、配列を操作する方法はたくさんあります。データ分析アプリケーションの多
くの仕事は、
pandas
の高レベル関数が担ってくれます。しかしある時点に到達すると、既存のライブ
ラリではまかなえない、独自のデータアルゴリズムを書く必要が出てくるでしょう。
A.2.1
配列の形状の再成形
配列を別の形状に再成形するのに、多くの場合、データをコピーする必要はありません。配列を再
成形するためには、配列インスタンスの
reshape
メソッドに、新しい形状を示すタプルを渡します。例
えば、次のような
1
次元配列を行列として再編成したいとします(図A-3に模式図を示します)。
In [18]: arr = np.arange(8)
In [19]
: arr
Out[19]: array([0, 1, 2, 3, 4, 5, 6, 7])
In [20]: arr.reshape((4, 2))
Out[20]:
array([[0, 1],
[2, 3],
[4, 5],
[6, 7]])