코로나 바이러스 상황 사이트에서 스크래핑하여 데이터 분석해 보았던 권 😷

아무래도, 처음 뵙겠습니다. WEB계 전직 활동중의 류입니다!

히키코모리 니트 생활을 하고 있기 때문에, 특히, 외출을 자숙하고 있는 것은 아니지만,
코로나 바이러스의 상황이 좋지 않기 때문에 신경이 쓰여 조사해 보았습니다.
그러면 후생 노동성 사이트에
「신형 코로나 바이러스 감염증의 현재의 상황과 후생 노동성의 대응에 대해」라고 하는 것이 있었으므로,
왠지 모르지만 스크래핑하여 현상을 데이터 분석해 보았습니다.

스크래핑



tableget.py
import requests
from bs4 import BeautifulSoup
import csv


# 新型コロナウイルス感染症の現在の状況と厚生労働省の対応について(令和2年2月21日版)
url = 'https://www.mhlw.go.jp/stf/newpage_09690.html'

r = requests.get(url)
if r.status_code == requests.codes.ok:

    soup = BeautifulSoup(r.content, 'html.parser')

    data = [[[td.get_text(strip=True) for td in trs.select('th, td')]
             for trs in tables.select('tr')]
            for tables in soup.select('table')]

    # 取得テーブル数確認
    #print(len(data))

    # 2番目のテーブル ※ダイヤモンドプリンセス号以外の患者数テーブルを取得
    table = data[2]

    #確定日,年代,性別,居住地の列番号のデータを取得
    columns = [2,3,4,5]

    result = [[rows[i] for i in columns] for rows in table]

    with open("corona_data.csv", "w", encoding="Shift_jis") as f: # 文字コードをShift_JISに指定
        writer = csv.writer(f, lineterminator="\n") # writerオブジェクトの作成 改行記号で行を区切る
        writer.writerows(result) # csvファイルに書き込み

※쉼표로 구분된 파일로 저장 가능

seaborn으로 세련된 시각화






감염이 확인된 현을 japanmap 라이브러리를 사용하여 시각화





→ 그래, 아직 구마모토는 갱신되지 않은 조 ...

요약



국내 사례(전세편 귀국자를 제외한다)의 공표 데이터로부터입니다만,
비율로는 남성이 많고, 특히 중년층(50-60대)의 분 많네요.


마지막으로



이번에는 BeautifulSoup를 사용한 스크래핑과 seaborn/matplotlib을 사용한 데이터
시각화를 실시했습니다.
미사용 요소 (확정 일 등)도 있으므로 그러한 데이터를 사용해 보는 것도 어떠한 관계성을 낼 수 있을 것 같아
좋을지도 모릅니다.

별로 효과는 기대할 수 없습니다만, 마스크 등 할 수 있는 대책은 합시다!


그럼 ✋

좋은 웹페이지 즐겨찾기