データ分析・初級問題チェック

問題 16 /40

NumPyのデータ型に関する説明で、誤っているものはどれか。

選択 1

整数のデフォルトはint64で、小数のデフォルトはfloat64である。

選択 2

dtype属性でデータ型を確認できる。

選択 3

データ型を変換するメソッドはない。

選択 4

int32やint64の数字部分は、確保するメモリ量を表している。

解説

選択肢3が正解です。 【選択肢1】 整数のデフォルトはint64で、小数のデフォルトはfloat64である。 正しい説明です。 ただし、OS、Python、NumPyのバージョンなど、環境によって変わることがあります。 【選択肢2】 dtype属性でデータ型を確認できる。 正しい説明です。 dtype属性は以下のように使います。 ------------------------------- arr = np.array([1]) arr.dtype ▶︎ dtype('int64') ------------------------------- 属性のため、「dtype(arr)」ではなく「arr.dtype」と記述します。 なお、要素の型ではなくオブジェクトの型を確認するtype関数は、関数のため「type(arr) ▶︎ numpy.ndarray」と記述します。type関数はNumPyの関数ではなく、Python標準の関数です。 【選択肢3】 データ型を変換するメソッドはない。 誤った説明です。 astypeメソッドで以下のように記述して、データ型を変更できます。 ------------------------------- arr = np.array([1]) arr.astype(np.float64) ▶︎ array([1.]) ------------------------------- 【選択肢4】 int32やint64の数字部分は、確保するメモリ量を表している。 正しい説明です。 int64などの数字部分は確保するメモリ量を表しており、以下の範囲の数値を要素に格納できます。 ------------------------------- int16 → 2バイト(-32768〜32767) int32 → 4バイト(-2147483648〜2147483647) int64 → 8バイト(-9223372036854775808〜9223372036854775807) ------------------------------- Numpyの主なデータ型は以下があります。 ------------------------------- bool(論理型) int16、int32、int64(整数) float16、float32、float64(浮動小数点数) datetime64、timedelta64(日時) ------------------------------- datetime64は、「date = np.array('2015-07-04', dtype=np.datetime64)」のように記述して作成します。 (公式書籍 p.96-97)