NumPy パッケージ
[toc]目次
インストール
Anacondaチャネルから以下のコマンドでNumPyをインストールできます。
conda install -c anaconda numpy
なお、NumPyはAnacondaに標準で含まれているので、AnacondaでPython環境を構築した場合は手動でのインストールは不要です。
ライブラリ
NumPyのライブラリは以下をご覧ください。
NumPyにおけるデータ型
基本データ型
NumPyは内部ではC言語で実装されているため、C言語のデータ型に対応するデータ型とそのエイリアスが定義されています。
主要なデータ型は以下の通りです。
np.int8 / np.int16 / np.int32 / np.int64 | 符号あり 8/16/32/64 ビット整数型 |
np.uint8 / np.uint16 / np.uint32 / np.uint64 | 符号なし 8/16/32/64 ビット整数型 |
np.float16 / np.float32 / np.float64 / np.float128 | 浮動小数点型 (それぞれ半精度 / 単精度 / 倍精度 / 四倍精度) |
NumPyの関数・メソッドでデータ型を指定する際は、例えば int8 型の場合は以下のようにします。
np.zeros((10, 10), np.int8) # NumPyのデータ型で指定する
np.zeros((10, 10), 'int8') # 文字列として指定する
また、Pythonのデータ型(int, float, strなど)で指定すると、等価なNumPyデータ型に変換されます。(どのNumPyデータ型に変換されるかは環境によって異なります)
np.zeros((10, 10), int) # Pythonのデータ型で指定する
array-like 型について
NumPyだけに限らず、SciPy.orgのパッケージ(pandas, Matplotlib など)では、APIドキュメントにarray-like 型というのが頻繁に出てきます。実はこのarray-likeというのは、Pythonにおける何か特定の型を表すのではなく、「ここに指定された値は配列として解釈されます」と宣言しているにすぎません。
つまり、関数・メソッドの引数がarray-like 型の場合は、引数として指定できる値は配列でもスカラーでも、リストでもなんでもよいということになります。ただし、その引数を受け取った関数・メソッドは、その値を配列として解釈しようとします。そして、配列として解釈できない場合はそのデータ型の0次元配列として処理されます。
NumPyにおける数学計算関数
- NumPyではsin, cosなど、mathモジュールが提供する関数と同名の関数を提供し、ブロードキャストが実装されています。