ndarrayはnumpyで定義できる配列オブジェクトです。非常に色々な場面で使用されるオブジェクトで、numpyの各種関数を使うときはもちろんのこと、SciPyやmatplotlibなどの他のモジュールを使うときにもndarrayでデータをやり取りしたりします。
概要
ndarrayの主な特徴を下記に示します。
- 全要素のデータ型(整数、浮動小数点など)は全て同じである。
- 大きさは固定されている。
- ループ文(forやwhile)を使わずに全要素の演算をすることができ、演算速度も高速である。(参考:ブロードキャスティング)
- 部分的に要素を取り出して扱う方法が多く備わっており、アイデア次第で色々便利な使い方ができる。(参考:スライス、インデキシング、マスキング)
- 各種関数のパラメータとして使われる。
補足:Pythonリストと比べると、データ型が要素ごとに変えられず、大きさも固定である点で若干の不便さはありますが、ndarrayは全要素を対象とした演算を行う場合の速度が圧倒的に高速です。
オブジェクトの作成
ndarrayの作成関数は沢山ありますが、基本的なものを下表にまとめました。
関数 | 機能 |
---|---|
numpy.zeros | 全要素が0の配列を作成 |
numpy.ones | 全要素が1の配列を作成 |
numpy.full | 全要素が指定値の配列を作成 |
numpy.array | リストやタプルで値を指定して配列を作成 |
numpy.arange | 公差を指定して等差数列の配列を作成 |
numpy.linspace | 要素数を指定して等差数列の配列を作成 |
numpy.logspace | 等比数列の配列を作成 (初項と最終項を底とべき指数を指定) |
numpy.geomspace | 等比数列の配列を作成 (初項と最終項と要素数を指定) |