NumPy配列の要素のデータ型の変換

astypeというメソッドでndarrayの要素のデータ型を別のものにしたndarrayを生成することができる。新しくndarrayを生成しているので、要素を変更してももとのndarrayには影響しない。

npdata1 = np.array([1, 2, 3])
print(npdata1.dtype)
# 出力結果
# int64

npdata2 = npdata1.astype(np.float64)
print(npdata2.dtype)
# 出力結果
# float64

npdata2[0] = 10

print(npdata1)
# 出力結果
# [1 2 3]

print(npdata2)
# 出力結果
# [ 10.   2.   3.]

偶然同じデータ型を指定した場合は単なるコピーと同じになる。

npdata1 = np.array([1, 2, 3])
npdata2 = npdata1.astype(np.int64)
npdata2[0] = 10

print(npdata1)
# 出力結果
# [1 2 3]

print(npdata2)
# 出力結果
# [10  2  3]
このサイトは筆者(hydrocul)の個人メモの集合です。すべてのページは永遠に未完成です。