그런데 이렇게 코드를 작성하고 실행했더니 오류가 발생합니다.

    실행 결과

    ------------------------------------------------------------
    ZeroDivisionError                         Traceback (most recent call last)
    <ipython-input-6-852b60f527e2> in <module>()
     8     for i in range(4,8):
     9         row[i] = int(row[i])
    ---> 10     rate = row[4]/ row[6]
     11     if rate > mx :
     12         mx = rate
    ZeroDivisionError:division by zero

    에러 메시지를 보니 0으로 값을 나눴다고 하네요. 아마 row[6] 값이 0인 역이 있는 것 같습니다. 다음과 같이 코드를 조금 수정해서 데이터를 확인했더니 row[6] 값이 0인 역들이 출력됩니다.

    if row[6] == 0 :
        print(row)

     

    실행 결과

    ['2019-01', '경원선', '1022', '창동', 19, 0, 0, 0]
    ['2019-01', '분당선', '1031', '복정', 25, 0, 0, 0]
    ['2019-01', '일산선', '1949', '지축', 2, 0, 0, 0]
    ['2019-01', '경의선', '1291', '서울역', 11, 0, 0, 0]
    ['2019-01', '경의선', '1293', '홍대입구', 2, 0, 0, 0]
    ['2019-01', '경의선', '1295', '김포공항', 10, 0, 0, 0]
    ['2019-01', '경의선', '1296', '계양', 7, 0, 0, 0]
    ['2019-01', '경의선', '1297', '검암', 5, 0, 0, 0]

    TIP

    실행 결과는 데이터를 받은 시기에 따라서 달라질 수 있습니다. 원활한 학습을 위해 가급적 2019년 1월 데이터를 기준으로 먼저 실습해 보세요.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.