카테고리 없음

모두의 데이터분석 08 지하철 시간대별 데이터 시각화하기

JJO.OYA 2022. 6. 14. 16:36

- 데이터 불러오기

import csv
f = open('subwaytime_202205.csv')
data = csv.reader(f)
for row in data:
    print(row)

그냥 데이터만 치면 주소값만 나오니까 for문 돌려줘서 data를 읽어줘야 내용이 출력됨

 

 

- 헤더 제외하기

next(data)
next(data)​

헤더 값이 2개니까 2개 밀어야함

 

 

- 데이터 타입 바꾸기 (문자열 >> 정수(int))

for row in data:
    row[4:] = map(int, row[4:])
    print(row)

map 함수 써서 int로 바꿔줌

근데 ,랑 마지막 열의 작업일시 때문에 오류뜸

ValueError: invalid literal for int() with base 10: '9,072'

 

>> 해결

for row in data:
    sub = lambda x : int(x.replace(',',''))
    row[4:-1] = [sub(x) for x in row[4:-1]]
    print(row)

 

 

- 아침 7시 승차 데이터 개수 및 인원수

result = []

for row in data:
    sub = lambda x : int(x.replace(',',''))
    row[4:-1] = [sub(x) for x in row[4:-1]]
    result.append(row[10])  # 7시

mx = 0          # 최댓값 초기화
mx_station=''   # 역 이름 초기화

for row in data:
    sub = lambda x : int(x.replace(',',''))
    row[4:-1] = [sub(x) for x in row[4:-1]]
    
    if sum(row[10:15:2]) > mx:                 # row[10] [12] [14] >> 7시~9시 승차
        mx = sum(row[10:15:2])                 # mx에 승차 sum 값 업데이트
        mx_station = row[3] + '('+row[1]+')'   # row[3] : 지하철역, row[1] : 호선명