728x90
서울 코로나 확진자 데이터 파이썬으로 분석하기 #1
서울시 공공데이터 API에서 제공하고 있는 코로나 19 확진자 데이터를 가져와서 파이썬으로 다뤄보고자 한다. 시간이 늦어서 한 번에 올리지 않고 이번 포스팅에서는 단순히 서울 공공데이터에서 데이터를 어떻게 가져오는지만 코드로 보여주도록 하겠다. 별거 없다. 굉장히 쉽다.
서울시 코로나 확진자 수 데이터셋 URL
아래 링크로 들어가서 사이트 회원가입 후 API 키 신청을 하면 모든 준비가 끝난다. 해당 API에서 사용할 데이터는 코로나 확진 순번, 코로나 확진 날짜, 코로나 접촉 이력, 지역, 현재 상태 데이터이다.
data.seoul.go.kr/dataList/OA-20279/S/1/datasetView.do
서울시 코로나19 확진자 현황
데이터 이용하기-서울시 코로나19 확진자 현황
data.seoul.go.kr
Python Code
API 신청 후 발급받은 API 키 값을 활용해서 데이터를 가져오도록 하겠다. 우선 아래 코드를 통해서 해당 API에서 제공하고 있는 총 데이터 행 수를 볼 것이고, 출력 결과 총 5,827개 데이터가 나왔다. 이 숫자가 바로 10월 26일까지 누적 서울시 코로나 확진자 수로 보면 된다.
import requests
import pandas as pd
url='http://openapi.seoul.go.kr:8088/API KEY/json/Corona19Status/1/2'
re=requests.get(url)
rjson=re.json()
total_num=rjson['Corona19Status']['list_total_count']
총 확진자 수를 확인했으면 바로 코로나 확진자 개별 데이터를 보도록 하겠다. 총 5,827개의 데이터가 있었기 때문에 반복문으로 데이터를 가져오도록 하겠다. 굉장히 쉽다. 별 설명이 필요가 없다.
ids=[]
corona_dates=[]
address=[]
corona_contact_detail=[]
status=[]
for i in range(1,int(round(total_num/1000,0))+1):
end=i*1000
start=end-1000 +1
if end >total_num:
end = total_num
url=f'http://openapi.seoul.go.kr:8088/API KEY/json/Corona19Status/{start}/{end}'
re=requests.get(url)
rjson=re.json()
for v in rjson['Corona19Status']['row']:
ids.append(v['CORONA19_ID'])
corona_dates.append(v['CORONA19_DATE'])
address.append(v['CORONA19_AREA'])
corona_contact_detail.append(v['CORONA19_CONTACT_HISTORY'])
status.append(v['CORONA19_LEAVE_STATUS'])
df=pd.DataFrame([ids,corona_dates,address,corona_contact_detail,status]).T
df.columns=['코로나 순번','확진 날짜','지역','접촉','현재 상태']
결과물
마무리
이번 포스팅에서는 API를 활용해서 데이터를 가져와 봤다. 다음 시간에는 위 데이터를 사용해서 다양한 분석을 해보도록 하겠다.
728x90
반응형
'문송충의 코딩하기 > 파이썬 데이터 분석' 카테고리의 다른 글
[파이썬] - 아마존에서 삼성 QLED TV 고객 리뷰 크롤링해서 가져오기 (4) | 2020.11.03 |
---|---|
[파이썬] - 서울시 공공시설 테니스장 데이터 가져오기 from 서울 공공데이터 API (1) | 2020.11.01 |
[장고:분노의 추적자] - 파이썬으로 네이버 영화 리뷰 가져오기 (0) | 2020.10.11 |
[장고:분노의 추적자] - 네이버 영화 API 통한 영화 정보 분석 with 파이썬 (0) | 2020.10.10 |
공공데이터 API를 활용한 국내 대차거래 종목 순위 확인하기 with 파이썬 (0) | 2020.10.08 |
댓글