[Numpy] 배열(Array) 데이터 타입

Hunie_07·2026년 2월 26일

Numpy

목록 보기
2/8
post-thumbnail

📌 Array 데이터 타입 변환

  • 배열을 처음 생성할 때 dtype 을 설정하여 생성할 수도 있지만, 생성한 배열의 데이터 타입을 후에 변환할 수도 있다.

1️⃣ .astype()

num_arr = str_arr.astype(dtype)

  • NumPy 데이터 형식 : dtype
    • 'i' : 부호가 있는 정수 int(8, 16, 32, 64)
    • 'u' : 부호가 없는 정수 uint(8, 16, 32, 64)
    • 'f' : 실수 float(8, 16, 32, 64)
    • 'c' : 복소수 complex(64, 128, 256)
    • 'b' : 불리언 bool
    • 'S' 혹은 'a' : 문자열 string_
    • 'O' : 파이썬 오브젝트 object
    • 'U' : 유니코드 unicode_
    • 'M' : 날짜, datetime

문자열 배열 → 숫자형 배열

  • int, float, int32
str_arr1 = np.array(['3.5', 4, 0.62, 7.4, 3.14])
str_arr1.astype(float)

- 출력

array([3.5 , 4.  , 0.62, 7.4 , 3.14])

실수형 배열 → 정수형 배열

  • 실수형을 정수형으로 변환시 소수 부분은 삭제되며 정수 부분만 남게 된다.
num_f1 = np.array([10, 21, 0.54, 4.75, 4.98])
num_f1.astype(int)

- 출력

array([10, 21,  0,  4,  4])

숫자형 배열 → 문자열 배열

  • 'U', str
num_int1 = np.array([10, 21,  0,  4,  4])
# 동일한 결과
num_int1.astype('U')
num_int1.astype(str)

- 출력

array(['10', '21', '0', '4', '4'], dtype='<U21')

num_f1 = np.array([10, 21, 0.54, 4.75, 4.98])
# 동일한 결과
num_f1.astype('U')
num_f1.astype(str)

- 출력

array(['10.0', '21.0', '0.54', '4.75', '4.98'], dtype='<U32')

0개의 댓글