살콤아내 자기계발/파이썬

점프투파이썬 3주차 실습_서로 유사한 모양(인구분포)의 그래프를 가진 동을 찾아라

살콤아내 2021. 4. 20. 12:44
728x90
반응형

 

age_population_month.csv
6.13MB
age_population_비슷한 인구그래프 찾기(학생답).py
0.00MB
age_population_비슷한 인구그래프 찾기(선생님답).py
0.00MB

 

문제1 : 신중동의 인구그래프와 가상 유사한 모양(인구분포)의 그래프를 가진 동을 찾아라

 

절차

1) 실제로는 정규화 작업을 통해 비교한다. 이번 문제에서는 다음과 같이 비율로 풀어본다.

A동의 0세~100세 인구/A동의 총인구를 B동의 0세~100세 인구/B동의 총인구를 뺀 값의 절대값의 합을 구한다.

 

|A동의 0세인구/A동의 총인구-B동의 0세인구/B동의 총인구| +

|A동의 1세인구/A동의 총인구-B동의 1세인구/B동의 총인구| +

|A동의 2세인구/A동의 총인구-B동의 2세인구/B동의 총인구| +

...... 

 

 

2) 신중동의 비율 데이터 구조를 리스트로 만든다

 

3) 신중동을 제외한 나머지동과 신중동의 인구분포 절대값 비교하는 리스트를 만든다. (1)에서 했던 데이터 리스트.

 

4) 해당 동의 자료를 int값으로 전환해서 그래프를 그린다.

 

 

내가 고안한 코딩 (에러가 엄청 생기고 어디서부터 잘못되었는지 모르겠음)

 

에러분석: 나처럼 코드를 짜면 찾는 동이름이 맨 위에 없을 시 바로 else로 넘어가서 찾는 동의 인구비율값이 비어버리기 때문에 에러가 생긴다. 따라서 if else보다는 선생님의 답처럼 for문을 두번 돌리는 것이 논리적으로 맞다.

 

 

 

 

선생님의 답

 

 

 

참고) result3를 비워주는 이유 (25줄): 누적적으로 append되는 일을 막기 위함이다

 

 

 

 

 

학생의 답

728x90
반응형