とうとうPythonで「新型コロナの曜日別の年代ごと陽性者数」を出すことに成功


このエントリーをはてなブックマークに追加

ここからちょっと広告です。

広告は以上です。

相変わらず、「Tellus×TechAcademy 初心者向け Tellus 学習コース」で、とりまPythonの基礎を学習し続けている僕です。
素晴らしい学習教材です。シンプルなのが僕に向いてます。

今回、ついに成し遂げました……

前回やった、イマイチ腑に落ちなかった前回のPythonプログラム「曜日別に、年代ごとのコロナ陽性者数を出す」について、かんいちさんから、

「pivot_tableとreindexを使えばできるんじゃないか?」

と、ご丁寧にサンプルコードつきでアドバイスいただきました。

● pivot_table とは?
ピボットテーブル、そう、エクセルのあのピボットテーブルと同じことが、Pythonでもできるようなのです。
詳しくは記事下のリンクで。

● reindex とは?
エクセルで言うと、行や列を並べ替える機能です。
詳しくは記事下のリンクで。

で、これらと格闘すること1週間。

結果としては、見事成功! かんいちさんマジすごいっす! ありがとうございます!

やり方は、概要で書くと以下の通り:

  1. 東京都のサイトからcsvデータを読み込む
  2. 「曜日」と「患者_年代」でピボットテーブルを作る
  3. reindexで希望通りの並びにする
  4. データを整理する。特に「NaN」を別の扱いやすいもの(0とか)に変えるのは大事らしいです(詳しくはわからない)
  5. グラフを描く

コードは以下の通り:

https://gist.github.com/kotoripiyopiyo/145bf40b9efe596ea2c0da34ec252573

結果は以下の通り。

Covid_data

優勝! 期待通りの結果を出せました。

本当は、曜日はちゃんとシステムに「これは曜日だ」と理解して欲しかったのですが、なんか weekday_name のバグ?らしく、修正が大変そうなので、今回は諦めました。
これで充分でしょう。

あと、このピボットテーブルが合ってるかどうか確認するために、こっそりエクセルのピボットテーブルで検算してみたのは内緒です……
いやPhtyhonを信用していないわけじゃないのよ。自分の腕を信用していないんです。

ところで、このグラフから読み取れることは……

ないですね! 特にない。
全員「水曜から土曜にかけて上がっていくのね」という、既知の情報以外ない。

お疲れさまでした自分。以上!って感じのプログラミングでした。

いやープログラミング面白いですね。フッと気がついたらアッという間に2〜3時間経ってるという、ゲーム的な時間の歪みがある。
これはかなり自分を律してやらないと、身体壊すなー。
10代とか20代のうちにこの面白さに目覚めて、エンジニア目指せばよかったなー。

さて、そろそろ復習は止めて、前に進まなければなりません。
次は、どちらに進もうか?

  1. 諦めて機械学習の勉強をはじめる
  2. このデータをWebから誰でも見れるように、AWSなどをやる
  3. なんか手元に「退屈なことはPythonにやらせよう」っていう辞書みたいな厚さの本がある。手を出す?

悩ましい…どれも今までみたいに雰囲気だけではできない、茨の道っぽい……

ps.thx!
Pandasのデータを格納するオブジェクトDataFrameを理解する - DeepAge
Pandasでピボットテーブルを手軽に作成するpivot_table関数の使い方 - DeepAge
Pandasでインデックスを再設定するreindex関数の使い方 - DeepAge
pandasで欠損値NaNを除外(削除)・置換(穴埋め)・抽出 | note.nkmk.me
pandas.DataFrameの行・列を指定して削除するdrop | note.nkmk.me
pandas.DataFrameに列や行を追加(assign, appendなど) | note.nkmk.me
pandasで行数、列数、全要素数(サイズ)を取得 | note.nkmk.me
pandas データフレームの行名・列名の参照と変更と追加 | AVILEN AI Trend
matplotlibでグラフの文字サイズを大きくする - Qiita
かんいちさん
そしていつもの「Tellus×TechAcademy初心者向け Tellus 学習コース

Ads by Google

コメント

コメントは、Twitterやはてブに、以下のボタンから本記事のアドレスつきでツイート/ブクマしていただくと、上にあるzenbackのウィジェットに反映されます。
  このエントリーをはてなブックマークに追加
または同ウィジェット内のFacebookコメントでお願いしますー。

Facebookのシェアは……されても誰だかわからないのですが、シェア自体は嬉しいので、下にボタンを置かせていただきます。よろしくお願いします。