15

dtype 최적화로 메모리 50-90% 절약

Day 1: 1GB CSV 열었더니 컴퓨터가 멈췄다

학습 목표

최적의 dtype을 선택하는 방법을 익힌다 category 타입의 효과를 파악한다

dtype이 메모리에 미치는 영향

pandas는 기본적으로 넉넉한 dtype을 사용한다. 이게 메모리 낭비의 주범이다.

정수 타입 비교

에디터 로딩 중...
타입범위크기
int8-128 ~ 1271 byte
int16-32,768 ~ 32,7672 bytes
int32-2.1B ~ 2.1B4 bytes
int64매우 큼8 bytes
uint80 ~ 2551 byte
uint160 ~ 65,5352 bytes

category 타입의 마법

반복되는 문자열에 90% 이상 메모리 절약 가능!

에디터 로딩 중...

최적화 코드

에디터 로딩 중...

최적화 전후 비교

컬럼원본 dtype최적화 dtype절약
id (0-1M)int64int3250%
age (0-100)int64int887.5%
salaryfloat64float3250%
status (3종류)objectcategory95%+

총 절약: 50-80%

💡 주의: float32는 정밀도가 낮아 금융 계산에는 부적합