NumPy入門 型と型変換

NumPyにはPythonの型とは別に独自の型が用意されています。

NumPyの型

以下URLから基本的な演算でよく使用するものを抜粋しました。
https://docs.scipy.org/doc/numpy-dev/user/basics.types.html

説明
bool 真偽型
int8 8ビット符号付き整数
int16 16ビット符号付き整数
int32 32ビット符号付き整数
int64 64ビット符号付き整数
uint8 8ビット符号なし整数
uint16 16ビット符号なし整数
uint32 32ビット符号なし整数
uint64 64ビット符号なし整数
float16 16ビット浮動小数点
float32 32ビット浮動小数点
float64 64ビット浮動小数点
complex64 64ビット複素数
complex128 128ビット複素数

上記以外にも、C言語と互換の型などがあります。詳細はリンク先を参照してください。

型の指定

ここでも少し説明しましたが、配列の生成時にdtypeで型を指定することができます。配列全ての要素が同じ型になります。

型を指定する場合は文字列か、nu.型名で指定します。

import numpy as np

# 文字列で指定
x = np.array([1, 2, 3], dtype='int64')

# np.で指定
x = np.array([1, 2, 3], dtype=np.int64)

型変換

作成後の配列に対してastypeを使用して型変換を行うことができます。例えばint32からfloat32に型を変える場合は以下のようにします。

import numpy as np
x = np.array([1, 2, 3, 4, 5], dtype='int32')
y = x.astype('float32')

元のインスタンスは破壊されない点に注意してください。