Python

[numpy] PY - NumPy Data Types (데이터타입) ★ - 종류 / 확인 / 변환.

14523
목차
  1. Python 데이터타입 (= 자료형)
  2. NumPy 데이터타입
  3. 배열 데이터타입 확인
  4. 정의된 데이터타입으로 배열 만들기
  5. 데이터타입 변환 불가한 요소 존재 시 에러 발생
  6. 기존 배열 데이터타입 변환

 

Python 데이터타입 (= 자료형)

 

strings

텍스트. (예) "hz" ※ 문자열은 따옴표로 감싸야 함.


integer

정수. (예) -2, -1, 0, 1, 2


float

실수. (예) 1.2, 42.42


boolean

참거짓. (예) True, False


complex

복소수. (예) 1.0 + 2.0j, 1.5 + 2.5j

 

 

NumPy 데이터타입

※ 몇 가지 데이터 유형이 더 추가됨.

※ 문자 1개로 데이터 유형을 표시함.

※ 대소문자 구별.

 

i - integer (정수)

b - boolean (참거짓)

u - unsigned integer (부호없는 정수)

f - float (소수)

c - complex (복소수)

m - timedelta (타임델타)

M - datetime (날짜시간)

O - object (객체)

S - string (문자열)

U - unicode string (유니코드 문자열)

V - void (다른 유형에 대한 고정된 메모리 덩어리) 

 

 

배열 데이터타입 확인

 

NumPy 배열 객체의 dtype 속성 : 배열의 데이터 유형 반환.

 


[예제1] - 정수

 

import numpy as np

arr = np.array([1, 2, 3, 4])

print(arr.dtype)

 

결과값: int32 (또는, int64

※ 시스템에 따라 32, 64 부분 다름.


[예제2] - 유니코드 문자열

 

import numpy as np

arr = np.array(['HTML', 'CSS', 'JS'])

print(arr.dtype)


결과값: <U4

※ 숫자 4 부분은 문자열 요소 중 가장 긴 길이 의미.

 

정의된 데이터타입으로 배열 만들기

1.

array() 함수로 배열 생성 시, 

선택적 매개변수인 dtype 이용해 데이터유형 정의 가능.


[예제] 문자열 타입으로 배열 생성.

import numpy as np

arr = np.array([1, 2, 3, 4], dtype='S')

print(arr) # [b'1' b'2' b'3' b'4']

print(arr.dtype) # |S1

 


2.

i, u, f, S, U 데이터 유형 경우. 크기도 지정 가능.

 

[예제] 

import numpy as np

arr = np.array([1, 2, 3, 4], dtype='i4')

print(arr) # [1 2 3 4]

print(arr.dtype) # int32

 

※ i8 경우 결과값 int 64

※ i 뒤에 아무 숫자나 넣으면 에러 발생.

 

데이터타입 변환 불가한 요소 존재 시 에러 발생

 

지정 타입으로 변환 불가한 요소 존재 시, ValueError 발생.

 


[예제]

 

import numpy as np

arr = np.array(['a', '2', '3'], dtype='i')

 

결과값: ValueError: invalid literal for int() with base 10: 'a'

 

기존 배열 데이터타입 변환

 

astype() 함수 : 배열 복사본 만들고 데이터유형을 매개변수로 지정.

※ 데이터유형 지정은 'f' , 'i' 등 형식, float, int 등 형식 둘 다 가능.

※ 기존 배열을 유지한 채 데이터유형 변경하는 가장 좋은 방법임.

 


[예제1] i 매개변수 사용해 데이터유형을 (실수 → 정수)로 변경.

 

import numpy as np

arr = np.array([1.1, 2.1, 3.1])

newarr = arr.astype('i')

print(arr) # [1.1 2.1 3.1]

print(newarr) # [1 2 3]

print(newarr.dtype) # int32

 


[예제2] int 매개변수로 데이터유형을 (실수 → 정수)로 변경.

 

import numpy as np

arr = np.array([1.1, 2.1, 3.1])

newarr = arr.astype('int')

print(arr) # [1.1 2.1 3.1]

print(newarr) # [1 2 3]

print(newarr.dtype) # int32

 


[예제3] bool 매개변수로 데이터 유형을 (정수 → 참거짓) 변경.

 

import numpy as np

arr = np.array([1, 0, 3])

newarr = arr.astype(bool)

print(arr) # [1 0 3]

print(newarr) # [ True False  True]

print(newarr.dtype) # bool



PS. 더 자세히 보기.

https://numpy.org/devdocs/reference/arrays.dtypes.html

 


분류 제목
numpy PY - NumPy Intro (넘파이 소개)
numpy PY - NumPy Start (설치/시작/버전확인) ★ - 모듈 불러오기 (3가지 방법)
numpy PY - NumPy Creating Arrays (배열 생성) ★ - 배열 차원 (= 중첩배열 = 다차원배열…
numpy PY - NumPy Array Indexing (배열 색인) ★ - 배열 요소에 접근
numpy PY - NumPy Array Slicing (배열 자르기) ★ - 배열 요소 일부만 선택.
numpy PY - NumPy Data Types (데이터타입) ★ - 종류 / 확인 / 변환.
numpy PY - NumPy Array Copy vs View (배열 복사 vs 뷰) ★
numpy PY - NumPy Array Shape (배열 모양) ★
numpy PY - NumPy Array Reshaping (배열 재구성) ★ - 배열 모양 변경
numpy PY - NumPy Array Iterating (배열 반복) ★
numpy PY - NumPy Joining Array (배열 결합) ★
numpy PY - NumPy Splitting Array (배열 분할) ★
numpy PY - NumPy Searching Arrays (배열 검색) ★
numpy PY - NumPy Sorting Arrays (배열 정렬) - sort() 메서드 ★
numpy PY - NumPy Filter Array (배열 필터링) ★
1/3
목록
 홈  PC버전 로그인 일본어
그누앞단언어
그누뒷단언어
그외코딩언어
그누보드
제작의뢰
Q&A
커뮤니티 2
웹유틸
회원센터
홈짱닷컴 PC버전 로그인