데이터 전처리 정리

개요

이 노트는 지방세 세수 예측 프로젝트에 사용되는 데이터를 전처리하는 방법에 대해 설명합니다.

  • 특이사항의 경우 outliers 문서를 참고하세요.

지방세 수입 실적과 당초예산 차이

지방세 수입 실적과 당초예산의 형태가 달라, 형태를 동일하게 전처리

  • 실제 징수액은 가장 세부적으로 구분되어 있음
    • 실제 징수액은 시군구별(본청 및 시군구)로 구분
    • 시세/구세(도세/시세/군세)별 세목으로 구분
    • 시세/구세(도세/시세/군세)를 합쳐서 당초예산과 동일한 형태로 전처리
  • 당초예산은 시군구별(본청 및 시군구) 세목별로만 구분
    • 실제 징수액과 달리 시세/구세(도세/시세/군세) 구분은 없음

지방세 수입 실적 데이터 전처리

핵심

지방세 수입 실적은 시세/구세(도세/시세/군세)로 구분되어 있습니다. 이를 당초예산과 직접적인 비교를 가능하게 하기 위해서 하나로 합쳤습니다. 시세/구세 구분은 본청과 시군구 구분과는 아무런 상관이 없습니다.

  • cleaning_actual_revenue.py 스크립트를 사용하여 데이터를 전처리합니다.
  • 주요 전처리 단계는 다음과 같습니다.
    1. 지역명 통일: 지역명을 약어로 변경합니다.
    2. 불필요한 컬럼 제거: 사용하지 않는 컬럼을 제거합니다.
    3. 데이터 타입 변환: DT 컬럼을 숫자 타입으로 변환합니다.
    4. 결측치 처리: 결측치를 0으로 채웁니다.
    5. 데이터 분류: 데이터를 6가지 유형으로 분류합니다.
    6. 피벗 테이블 생성: utils.pyprocess_data 함수를 사용하여 데이터를 피벗 테이블 형태로 변환합니다.
    7. 데이터 정규화: utils.pyscale_data 함수를 사용하여 데이터를 정규화합니다.

당초예산 데이터 전처리

  • cleaning_budget.py 스크립트를 사용하여 데이터를 전처리합니다.
  • 주요 전처리 단계는 다음과 같습니다.
    1. 컬럼 이름 정제: 컬럼 이름을 통일하고 불필요한 부분을 제거합니다.
    2. 데이터 타입 변환: 세목별 금액 컬럼을 숫자 타입으로 변환합니다.
    3. 결측치 처리: 결측치를 0으로 채웁니다.
    4. 데이터 분류: 데이터를 6가지 유형으로 분류합니다.
    5. 데이터 통합: 연도별 데이터를 하나의 파일로 통합합니다.

데이터 저장

  • 전처리된 지방세 수입 실적 데이터는 data/processed/actual_revenue_1994-2022.pkl 파일에 저장됩니다.
  • 전처리된 당초예산 데이터는 results/budget.xlsx 파일에 저장됩니다.