仕事上、早々にを使えるようにしないといけないため、
を基に学んでいく。
前回
3. NumPyの基礎:配列とベクトル演算
は""の意味ででの数値計算におけるもっとも重要な基本パッケージの1つである。
3.1 NumPy ndarray:多次元配列オブジェクト
に対する算術操作は、その配列要素全てに作用する。
3.1.2 ndarrayのデータ型
のデータ型をという。メモリ上のデータ表現形式を示す特別なオブジェクトでメタデータでもある。
arr1 = np.array([1,2,3], dtype = float64)
がメモリ上にその要素の機械表現を保持するために、柔軟にデータのやり取りができる。
型 | 型コード | 説明 |
---|---|---|
符号あり/なし8ビット整数型 | ||
符号あり/なし16ビット整数型 | ||
符号あり/なし32ビット整数型 | ||
符号あり/なし64ビット整数型 | ||
半精度浮動小数点型 | ||
単精度浮動小数点型 | ||
倍精度浮動小数点型 | ||
四倍精度浮動小数点型 | ||
複素数型 | ||
? | 真偽値型 | |
オブジェクト型 | ||
_ | 固定長文字列型 | |
_ | 固定長ユニコード文字列型 |
をキャストするにはメソッドを用いる。文字列型として格納されていた数値を数値型にキャストすることもできる(ただしの文字列データは固定長であるため、警告なしに切り捨てられる。)。
arr = np.array([1,2,3,4,5]) float_arr = arr.astype(np.float64) print(float.arr.dtype)
3.1.3 ndarrayの算術演算
では要素ごとの処理のためにループを書かずともベクトル演算ができる*1。
import numpy as np arr = np.array([[1.,2.,3.],[4.,5.,6.]]) arr2 = np.array([[0.,4.,1.],[7.,2.,12.]]) print(arr) # ベクトル演算 arr_prod = arr * arr print(arr_prod) arr_subtract = arr - arr print(arr_subtract) arr_divide = 1 / arr print(arr_divide) arr_power = arr ** 0.5 print(arr_power) arr_inequality = arr > arr2 print(arr_inequality)
*1:Rと同じという事である。