Python CSV 데이터 정리: ERP 다운로드 파일의 흔한 오류
ERP에서 CSV로 내려받은 출하 내역을 분석할 때 가장 먼저 확인해야 할 것은 자동화 도구가 아니라 데이터가 어디에서 생기고 누가 최종 결과를 확인하는지입니다. 콤마, 인코딩, 빈 셀, 숫자에 포함된 구분기호 때문에 잘못된 결과가 나올 수 있습니다.
핵심: 원본 CSV를 읽어 공백을 정리하고, 필수 항목이 없는 행은 별도 파일로 분리합니다.
실무에서 먼저 마주치는 문제
콤마, 인코딩, 빈 셀, 숫자에 포함된 구분기호 때문에 잘못된 결과가 나올 수 있습니다.
예를 들어 같은 고객이더라도 제품 모델, 구매 법인, 납품 공장이 다르면 한 줄로 합치는 것이 오히려 오류를 만들 수 있습니다. 따라서 집계 키와 원본의 단위를 먼저 정의해야 합니다.
실행 순서
- 원본 자료를 복사해 테스트 폴더를 만들고 입력 형식을 정리합니다.
- 원본 CSV를 읽어 공백을 정리하고, 필수 항목이 없는 행은 별도 파일로 분리합니다.
- 처리 결과를 저장할 때 원본 파일을 덮어쓰지 않습니다.
- 정리 전후 행 수와 제외 사유를 비교. 문제가 있으면 입력 파일과 오류 로그부터 확인합니다.
검토 체크리스트
UTF-8 BOM, 열 이름, 빈 행, 중복 ID. 특히 담당자가 최종 확인해야 하는 항목은 자동화 범위에서 제외하거나 검토 대기 상태로 남겨 두는 것이 안전합니다.
작은 예제로 확인하기
실제 고객 정보 대신 가상의 거래처 A, B와 제품 모델 F-120, F-80을 사용해 테스트합니다. 원본에 오류 한 건을 의도적으로 넣고, 처리 후 오류가 별도로 식별되는지 확인합니다. 수량·금액·일정의 합계가 원본과 일치하지 않으면 자동 처리 결과를 업무에 사용하지 않습니다.
자동화의 한계와 적용 판단
모든 상황을 자동화하는 것이 목표는 아닙니다. 예외가 잦고 판단 근거가 문서에 남지 않는 작업은 우선 표준 양식을 만드는 편이 낫습니다. 반복 빈도, 오류 발생 비용, 검증에 필요한 시간을 함께 고려하세요.
자주 묻는 질문
처음부터 모든 자료에 적용해도 되나요?
권하지 않습니다. 5~10건의 가상 데이터로 결과를 확인하고, 이후 실제 데이터의 복사본으로 시험하세요.
어떤 기록을 남겨야 하나요?
처리 날짜, 입력 파일 또는 고객 건, 담당자, 변경 전후 값, 오류 내역을 남기는 것이 좋습니다.
실습 파일
이 글은 Python 업무 흐름을 설명합니다. 통합 패키지의 scripts/csv_clean.py 파일은 예제용이며, 실제 자료에 적용하기 전에 코드와 결과를 확인해야 합니다.
관련 자료는 SWL의 해외영업 및 업무자동화·AI 카테고리에서 함께 확인할 수 있습니다.
