데이터 전처리: 데이터 포맷 – CSV
ㅁ 데이터 포맷
ㅇ 정의:
데이터 포맷은 데이터를 저장하고 교환하기 위한 구조와 규칙을 의미하며, 분석 및 처리 과정에서 호환성과 효율성을 위해 표준화된 형태를 사용한다.
ㅇ 특징:
– 데이터 저장 구조와 구분자, 인코딩 방식 등이 정의됨
– 파일 크기, 읽기/쓰기 속도, 호환성에 영향을 줌
– 다양한 시스템과 언어에서 읽고 쓸 수 있도록 표준화된 형식 선호
ㅇ 적합한 경우:
– 서로 다른 시스템 간 데이터 교환이 필요한 경우
– 데이터 분석 전 표준화된 입력 형태가 필요한 경우
ㅇ 시험 함정:
– 포맷과 데이터베이스 스키마를 혼동하는 경우
– 포맷의 장단점을 묻는 문제에서 속도, 용량, 호환성의 균형을 간과
ㅇ 시험 대비 “패턴 보기” 예시:
O: “데이터 포맷은 데이터의 구조와 저장 규칙을 정의한다.”
X: “데이터 포맷은 데이터베이스의 질의 언어를 의미한다.”
================================
1. CSV
ㅇ 정의:
CSV(Comma-Separated Values)는 각 데이터 필드를 쉼표로 구분하여 저장하는 텍스트 기반 데이터 포맷이다.
ㅇ 특징:
– 단순한 구조로 대부분의 데이터 처리 도구와 호환 가능
– 사람이 읽기 쉬움
– 대용량 데이터에서는 파일 크기가 커지고 읽기/쓰기 속도가 느려질 수 있음
– 필드 값에 쉼표가 포함될 경우 따옴표로 감싸야 함
ㅇ 적합한 경우:
– 간단한 데이터 교환
– 소규모~중규모 데이터 저장
– 다양한 플랫폼 간 데이터 호환 필요 시
ㅇ 시험 함정:
– 쉼표 외에도 탭, 세미콜론 등 다른 구분자를 사용할 수 있다는 점을 간과
– CSV는 구조적 데이터만 저장 가능하다고 오해
ㅇ 시험 대비 “패턴 보기” 예시:
O: “CSV는 쉼표로 구분된 값들의 집합으로, 텍스트 파일 포맷이다.”
X: “CSV는 바이너리 형식으로만 저장된다.”
ㅁ 추가 학습 내용
CSV 파일은 인코딩 방식(UTF-8, EUC-KR 등)에 따라 한글이 깨질 수 있으므로 적절한 인코딩 설정이 중요하다. CSV 형식은 메타데이터(데이터 타입, 스키마 정보 등)를 포함하지 않기 때문에 데이터 타입 정보는 별도로 관리해야 한다. RFC 4180 표준에서는 줄바꿈 규칙과 필드 감싸기 규칙이 정의되어 있으므로 이를 이해하는 것이 유리하다. 대용량 CSV 파일은 ZIP, GZIP 등의 압축 저장 방식과 스트리밍 처리 방식이 성능에 영향을 줄 수 있다는 점을 알아두어야 한다.