NumPy パッケージ
[toc]インストール
Anacondaチャネルから以下のコマンドでNumPyをインストールできます。
1 | 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 型の場合は以下のようにします。
1 2 | np.zeros(( 10 , 10 ), np.int8) # NumPyのデータ型で指定する np.zeros(( 10 , 10 ), 'int8' ) # 文字列として指定する |
また、Pythonのデータ型(int, float, strなど)で指定すると、等価なNumPyデータ型に変換されます。(どのNumPyデータ型に変換されるかは環境によって異なります)
3 | 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モジュールが提供する関数と同名の関数を提供し、ブロードキャストが実装されています。