Pythonでデータ分析をする際によく使用されるNumPyで配列(ndarray)の属性情報を確認する方法を解説します。
Contents
配列(ndarray)の属性情報の確認方法
NumPyで使用される配列の型であるndarrayは、いくつかの属性を持っており、配列から簡単に参照することができます。
配列の属性情報としてよく確認する属性(dtype, size, shape, ndim, itemsize, nbytes)について確認方法を紹介します。
配列の型を確認する ~ dtype ~
配列の型を確認する場合には、以下のようにdtypeを使用します。
import numpy as np data = np.array([1, 2, 3, 4, 5]) print(data) print(f'dtype: {data.dtype}')
【実行結果】 [1 2 3 4 5] dtype: int32
NumPyのデータタイプについては、こちらのドキュメントを参照してください。
配列の要素数を確認する ~ size ~
配列の要素数を確認する場合には、以下のようにsizeを使用します。
import numpy as np data = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) print(data) print(f'size: {data.size}')
【実行結果】 [[1 2 3] [4 5 6] [7 8 9]] size: 9
上記の例では、3×3の配列となっていますがsizeが返却するのがすべての要素数の数(上記の例では9)になっていることに注意してください。
配列の形状(n×m×…)を確認する場合は以降のshapeで確認してください。
配列の形状を確認する ~ shape ~
配列の形状(n×m×…)を確認する場合には、以下のようにshapeを使用します。
import numpy as np data = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) print(data) print(f'shape: {data.shape}')
【実行結果】 [[1 2 3] [4 5 6] [7 8 9]] shape: (3, 3)
配列の次元数を確認する ~ ndim ~
配列の次元数を確認する場合には、以下のようにndimを使用します。
import numpy as np data = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]) print(data) print(f'ndim: {data.ndim}')
【実行結果】 [[[1 2] [3 4]] [[5 6] [7 8]]] ndim: 3
配列の1要素のバイトサイズを確認する ~ itemsize ~
配列の1要素のバイトサイズを確認する場合には、以下のようにitemsizeを使用します。
import numpy as np data = np.random.randint(0, 10, 10) print(data) print(f'itemsize: {data.itemsize} bytes')
【実行結果】 [0 5 8 0 0 1 8 7 7 0] itemsize: 4 bytes
上記の例では、1要素が4バイトとなっていることがわかります。
配列全体のバイトサイズを確認する ~ nbytes ~
itemsizeでは1要素のバイトサイズを確認しましたが、配列全体のバイトサイズを確認する場合には、以下のようにnbytesを使用します。
import numpy as np data = np.random.randint(0, 10, 10) print(data) print(f'nbytes: {data.nbytes} bytes')
【実行結果】 [0 2 6 2 6 4 3 9 5 9] nbytes: 40 bytes
itemsizeでの確認では4バイトでしたが、10要素持つ配列のためnbytesの結果は40バイトになっていることがわかります。
上記で紹介しているソースコードについてはgithubにて公開しています。参考にしていただければと思います。