【キノカレッジ|プログラミング入門クラス|22年10月(1)】Python超入門とPandasの基礎を学ぼう

本講座を受講してできるようになること

  • Pythonの最低限の基礎力を身につける
  • 自走してコードの勉強や業務効率化などに挑戦できるようなスタートラインに立つ
  • 業務効率化クラス、または機械学習実践クラスを受講できるレベルになる

第1回目の講座内容

  • Python を使った必要最低限のコードを実演、レクチャー
  • Pandas を使ったテーブルデータでのコードを実演、レクチャー
  • さらに勉強を深めたい人に向けて学習アドバイス(オブジェクト指向,docstring,atcoder,などについて)

第一回講座までに解いてきていただきたい内容です。

出題範囲はキノクエスト内の
python超入門講座
pandas入門講座
これらの範囲内から出題します。

ウォーミングアップ問題

  1. "プログラミング第一回講座"の文字列をprint出力しましょう。
  2. ご自身の名前を変数名nameに格納して、nameをprint出力しましょう。
  3. 次の配列のindex番号2番目の文字列を出力しましょう。
       fluits = ["apple", "banana", "grape"]
  4. for文を用いてfluitsの配列の要素を一つずつprint出力しましょう。
  5. 4の問いに対してenumurate関数を用いて、index番号と共に文字列を出力しましょう。ただし、index番号の初めは1からとします。
    • 下記のように出力しましょう
      1 apple
      2 banana
      3 grape
  6. for文を用いて0から19までprint出力してみましょう。
  7. 6の問に条件式を追加して3の倍数の時の数だけprint出力してみましょう。
  8. 6の問の条件式を変更して2の倍数でありかつ3の倍数の時の数だけprint出力してみましょう。

いかがでしたでしょうか。

こちらの内容ができていれば、最低限コードを書いていくことはできると思います。

では実際のデータを用いた問題に取り組みましょう。

人口ピラミッド_全国(日本)_2020年.csvを使った問題です。

今後においても、vscodeのようなコードエディタを利用してpythonを書いていただくのが良いかと思いますが少し時間がかかるようでしたらGoogleColaboratoryを使い課題に取り組んでいただきたいです。

GoogleColaboratoryの使用方法については、動画での解説がありますのでご参照くださいませ。

演習問題

  1. 人口ピラミッド_全国(日本)_2020年.csvを読み込み、変数に格納しましょう。

  2. データの型を確認しましょう。

  3. 必要であれば、人口(男性)【人】と人口(女性)【人】のカラムをint型にしましょう。

  4. 欠損値が含まれているか確認しましょう。

  5. カラム名"人口(男性)【人】"と"人口(女性)【人】を "男性"と"女性"にrenameしましょう。必要であれば、変数に格納しましょう

  6. カラム名"男性"の列の値をfor文を使って一行ずつprint出力しましょう。

    • 下記のように出力しましょう
          9766
          92110
          --
          --
          --
          同様に続く
  7. カラム名"年齢区分"とカラム名"男性"のそれぞれの対応させて、一行ずつprint出力しましょう。

    • 下記のように出力しましょう
          100歳以上は 9766人です
          95〜99歳は 92110人です
          --
          --
          --
          同様に続く
  8. カラム名"男性"の平均を求めましょう。その平均とカラム名"男性"の行を比べ、平均より大きい場合と小さい場合についてprint出力しましょう。差分も合わせて出力しましょう。

    • 下記のように出力しましょう

          100歳以上は平均より
          2835873.904761905人少ない
      
          95~99歳は平均より
          2753529.904761905人多い
      
          90~94歳は平均より
          --
          --
          同様に続く
  9. インデックスを指定し、"注記1"と"注記2"のカラムを全て削除して、変数に格納しましょう。

    下記のようなデータフレームになります

    地域名時点年齢区分男性女性
    0全国(日本)2020年100歳以上976669757
    1全国(日本)2020年95~99歳92110400614
    2全国(日本)2020年90~94歳4913031287713
    同様に続く
  10. 列名(男性)と列名(女性)を足し合わせて、(男女計)という新しいカラムを作成しましょう。

    下記のようなデータフレームになります

    地域名時点年齢区分男性女性男女計
    0全国(日本)2020年100歳以上97666975779523
    1全国(日本)2020年95~99歳92110400614492724
    2全国(日本)2020年90~94歳49130312877131779016
    同様に続く
  11. 列名(男性),(女性),(男女計)それぞれの中で一番大きい値の年齢層を出力してみましょう。

  12. 列名(男性),(女性),(男女計)をdescribe関数を使って出力しましょう。

  13. データフレームの最終行に男性、女性の総計を追加しましょう、地域名:全国(日本),時点:2020年,年齢区分:総数

    データフレームになります

    地域名時点年齢区分男性女性男女計
    19全国(日本)2020年5~9歳260665124824425089093
    20全国(日本)2020年0~4歳231118922048934516082
    21全国(日本)2020年総数5975843863455823123214261
  14. 列名(男性)をソートして大きい順に並べ替えましょう。