【Python】Numpy配列にデータ型を指定する
PythonのNumpyは何も指定しなければint64型になりますが、初期化の際にあえて型を指定することができます。
import numpy as np a1=np.arange(5) print(a1) print(a1.dtype) <h1>[0 1 2 3 4]</h1> <h1>int64</h1> a2=np.arange(5,dtype='int16') <h1>a2=np.array([0, 1, 2, 3, 4],dtype='int16') #これでもOK</h1> print(a2) print(a2.dtype) <h1>[0 1 2 3 4]</h1> <h1>int16</h1> a3=np.arange(5,dtype='float') print(a3) print(a3.dtype) <h1>[0. 1. 2. 3. 4.]</h1> <h1>float64</h1> a4=np.array([0, 1, 2, 3, 4],dtype='unicode') #arangeは使えない print(a4) print(a4.dtype) <h1>['0' '1' '2' '3' '4']</h1> <h1><U1</h1> a5=np.array([0, 1, 2, 3, 4],dtype='bool') #arangeは使えない print(a5) print(a5.dtype) <h1>[False True True True True]</h1> <h1>bool</h1>
使える型は以下のとおり。
np.int8, # 符号あり 8bit 整数 np.int16, # 符号あり 16bit 整数 np.int32, # 符号あり 32bit 整数 np.int64, # 符号あり 64bit 整数 np.uint8, # 符号なし 8bit 整数 np.uint16, # 符号なし 16bit 整数 np.uint32, # 符号なし 32bit 整数 np.uint64, # 符号なし 64bit 整数 np.float16, # 半精度 浮動小数点数 np.float32, # 単精度 浮動小数点数 np.float64, # 倍精度 浮動小数点数 np.float128, # 四倍精度 浮動小数点数 np.complex64, # 複素数 (実数・虚数が float32) np.complex128, # 複素数 (実数・虚数が float64) np.complex256, # 複素数 (実数・虚数が float128) np.bool, # 真偽値 np.unicode, # Unicode文字列 np.object # Pythonオブジェクト(へのポインタ)
スポンサーリンク