Python 자료형과 정제
결합 표의 날짜·숫자를 정리하고 결측 처리 영향을 비교합니다.
진도 0%
레슨
- 변수와 조건으로 행 검사
표준 입력 JSON의 통행량을 숫자로 검증하고 오류 행 번호를 출력합니다.
- 리스트와 집합으로 중복 찾기
지역·날짜 키를 튜플과 집합으로 관리하고 중복 행 번호를 출력합니다.
- 날짜와 단위 정규화
입력 JSON의 날짜를 ISO 날짜로 바꾸고 강수량 단위와 오류를 명시적으로 반환합니다.
- 파일 읽기와 결측 처리 비교
with와 csv로 joined.csv를 읽어 삭제·미대체 정책의 행 수와 지역별 결측률을 비교합니다.
Python 자료형과 정제 결과물 통합
m03-join-keys solution 전체와 joined.csv 6행을 그대로 이어받습니다. 합성 교통·날씨 표본을 정제하고 결측 정책에 따른 지표 차이를 감사 기록과 판단 문서로 전달합니다.
요구사항
- m03 joined.csv를 clean.csv로 변환하는 함수와 CLI를 작성합니다.
- 오류 행은 rejected.csv로 분리하고 원본·정상·오류·중복 행 수를 기록합니다.
- 결측을 0으로 바꾸지 않고 삭제와 보존 정책의 지표 차이·편향을 적습니다.
- clean.csv의 결측은 빈칸으로 보존하며 duplicates.csv에는 정규화 후 완전 일치 중복, rejected.csv에는 값 오류와 KEY_CONFLICT 원문·번호·이유를 기록합니다.
- clean-audit.json에 보존·완전 사례 정책의 분모·교통 평균·지역별 강수 결측률을 기록하고 policy-note.md에 판단 근거를 작성합니다.
완료 기준
- python3 -m unittest discover -s tests -v: 기존29개와 새12개 총41개 통과, starter는 새 정책 테스트 일부 실패합니다.
- 기본 표본은 정상6·오류0·중복0행, 보존 평균78대(유효5개)·완전 사례 평균75대(4행), 지역별 강수 결측률 각각1/3입니다.
- 원본 행 수=정상+오류+제거된 완전 중복이 성립합니다. 날짜·숫자·결측·윤년·빈 목록·충돌·잘못된 헤더·재실행 fixture와 입력 바이트 보존 검사를 통과합니다.
python3 -m unittest discover -s tests -v미션 시작 코드
모범 답안
모범 답안 내려받기검토 기준
- 판단 근거와 제외 조건을 데이터와 연결해 설명합니다.
- 앞 단계 산출물을 재사용하고 원본을 보존합니다.