NumPy

【NumPy】配列(ndarray)の属性情報の確認方法 ~ dtype, size, shape, ndim, itemsize, nbytes ~

【NumPy】配列(ndarray)の属性情報の確認方法 _ dtype, size, shape, ndim, itemsize, nbytes _

Pythonでデータ分析をする際によく使用されるNumPyで配列(ndarray)の属性情報を確認する方法を解説します。

配列(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

Note

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バイトになっていることがわかります。

Note

今回は代表的な属性を紹介しましたが、ndarrayの属性は上記の他にもあります。

ndarrayの属性については、こちらのドキュメントにある「Attributes」の項目を参照してください。