2023.02.20
  • twitter
  • facebook
  • はてなブックマーク
  • 印刷

高校「情報I」:Pythonを活用してデータ分析に挑戦(前編) 1989年にプログラミング教育をスタートした神奈川大学附属高等学校の実践

新学習指導要領の施行により、2022年度から高等学校ではさまざまな教科の見直しが行われた。特に注目されているのが情報科だ。これまでは情報の基礎知識を扱う「社会と情報」と、プログラミングを含む「情報の科学」のどちらかを選択する方式だったが、必履修科目として「情報I」へ統合。さらに2023年度からは選択科目「情報II」が新設される。

新しい「情報科」ではどのような学びが期待され、学校や教員は何を重視すべきなのだろうか。

今回は1989年と早い時期からICT活用や情報教育を行ってきた神奈川大学附属中・高等学校での実践を取材した。前編ではプログラミング言語「Python」を使用した「情報I」の授業の様子と、授業者の塩屋喬介教諭へのインタビューを紹介する。

授業概要

学年:高等学校1年生

教科・単元:情報Ⅰ「Pythonデータ分析 2変量〜多変量の分析と考察」

目標:プログラミング(Python)を利用して、変数間の関係性を見出すことができるようになる。
   変数間の関係性について、自身の言葉で説明できるようになる。

ねらい:今後の探究(研究)活動などにおいて、変量間の影響を調査したり、変化の予測を行ったりする際に適切な手段で分析をし、客観的指標を用いて結論を出すことができる。

授業者:塩屋喬介 教諭

使用教材・教具:iMac、Google Colaboratory上の教材

高度情報社会に対応するための能力を育成

散布図の描画と、相関係数の導出

取材した2023年1月18日は2022年度の24回目の授業となる。1学期は映像編集やWebページ制作を行った。プログラミング言語「Python(パイソン)」は9月から毎時活用しており、2学期は基本的なアルゴリズムの表現やシミュレーションを行った。3学期はデータ分析に取り組む。本時の目標は、変数間の関係性を見出すことだ。「Google Colaboratory(ブラウザから直接Pythonを記述、実行できるサービス)」上に塩屋教員が作成した教材が示された。

まずは数学Ⅰでも学習している「変量の関係性の分析」の確認からスタート。

  • 変量はx軸、y軸からなる「散布図」として描くことで、互いの関係性を可視化することができる。
  • 一方が増加すると、もう一方が増加する関係を「正の相関」、一方が増加すると、もう一方が減少する関係を「負の相関」と呼ぶ。
  • 双方が無関係の場合は、グラフ全体に点が規則性なく散らばり「無相関」となる。

続いて、「(二人以上の世帯における)2021年度月間アイスクリーム支出額と平均気温」のデータが提示された。気温が高いとアイスクリームの支出額が高くなり、逆に気温が低いとアイスクリームの支出額は低くなる。相関は2つの値が伴って変化することを示すこと、両者は「正の相関」と読み取れることが解説され、Pythonで相関係数を導出した。

回帰分析

次に「2変量の因果関係の分析」が説明された。「『気温が1度上がった場合、アイスクリームの支出額はどれくらい変化するのか?』『気温が平均30℃の月はアイスクリームの売上はいくらになるのか?』など、具体的な数字を考えていくときに必要なのが回帰分析です」(塩屋教諭)

両者に原因と結果の関係性が考えられる場合、プログラミングとして1次関数などの数式モデルを立てることができる。気温がアイスクリームの支出額に与える影響を考えるときには、「y=ax+b」という数式モデルから導くことが可能だ。この場合xに気温を、yに支出額を代入することで、両者の関係を見出せる。

続いて、下記のサンプルプログラムを提示しながら解説。生徒はモニターを見ながら具体的な流れを掴んでいく。

  1. Excelファイル「2021年の月間アイスクリーム支出と平均気温」を読み込んだ後、分析対象となる入力(原因)x、出力(結果)yを指定する。
  2. 回帰分析には、まずモデルを作成する。線形回帰(1次関数)に近似させるため、LinearRegression()を指定。これにより、「y=ax+b」で式を作れば良いとプログラム側は理解することができる。
    続いて、計算(フィッティング)を行う。
    最後に、変数predictに入力xに対する出力yの値を代入する。これにより、回帰直線を描画することができる。
  3. 算出した係数は、model.coef_に、切片はmodel.intercept_とし、それぞれの値を算出させる。
  4. scatterで散布図を、plotで回帰直線を描画する。

このプログラムにより係数は43.9、切片は115.8と求められる。「アイスクリームの支出y」と「平均気温x」の関係は、y=43.9x+115.8と表せることから、平均気温が1度上がるごとに、アイスクリームの支出額は43.9円高くなることがわかる。例えば平均気温が30℃の場合、アイスクリームの支出額は1432.8円となると予想することが可能だ。

サンプルプログラム

#1.Excelファイルの読み込み
data = pd.read_excel('2021年月間アイスクリーム支出と平均気温.xlsx')

# 入力xと出力yを決める
x = data['平均気温'].values.reshape(-1,1)
y = data['アイスクリーム支出額']

#2.回帰分析を行う
model = LinearRegression()  # 左辺は好きなモデル名で良い
model.fit(x, y)
predict = model.predict(x)

#3.係数と切片を表示する
print('係数 = ', model.coef_)
print('切片 = ', model.intercept_)

#4.グラフを描画する
plt.figure(figsize=(5, 5))
plt.title('月間アイスクリーム支出額と平均気温の関係')
plt.xlabel('平均気温')
plt.ylabel('アイスクリーム支出額')
plt.grid()
plt.scatter(x, y)
plt.plot(x, predict)  #この行で回帰直線を表示している 
plt.show()

次に、多変量の場合の重回帰分析の練習問題として「2022年のセリーグチームの成績」のデータが与えられた。

サンプルプログラムを変更し、打点が勝ち数に与える影響について分析を行う。打点を入力、勝数を出力とした時の回帰分析を行い、切片と係数を求め、散布図上に回帰直線を描画する。考察時間はおよそ10分。隣同士で教え合うなど、協力しながら進める生徒が目立った。

終盤では宿題が提示された。「平均気温と最新積雪量」の関係性を表すグラフの描画と相関係数の算出、「1学期と2学期の成績」の散布図と回帰直線の描画と切片、係数の値を求める内容などだ。レポートはClassi上に提出する。

授業者インタビュー

受験も意識して、実習と座学のバランスを調整

神奈川大学附属中・高等学校 塩屋喬介 教諭

―新学習指導要領の実施に伴い、情報科のカリキュラムをどのように変えましたか。

塩屋喬介教諭(以下、塩屋) 本校では2010年から「情報と科学」を導入していたこともあり、カリキュラムの順番を見直したり、Web制作を行っていたところをデータ分析に置き換えた程度です。指導内容としては大きく変えていませんね。

一方で、2025年から大学入学共通テストに情報Ⅰが追加されるため、受験を意識しながら授業に取り組むようになりました。実習と座学の時間のバランスの調整を常に意識しています。

―2学期から毎時間プログラミング言語 「Python」を実習していると聞きます。生徒たちは慣れましたか?

塩屋 まだまだ難しさを感じているという印象を受けます。私の説明を丁寧に聞いてくれていても、いざ自分で実践する時に手が止まってしまう子が多いです。

“間違えたくない”という思いが根底にあると、いつまで経っても頭がぐるぐるしてしまいがち。とりあえず自分で触ってみて、トライ&エラーを繰り返すことがプログラミングでは大切だとしっかり伝えていきたいですね。

―本時の授業で工夫した点を教えてください。

塩屋 さまざまな種類のデータを取り上げたことです。Pythonでのデータ分析は本時が2回目ですが、1回目ではExcelの読み込みやグラフの出力がメインで、実質的なデータ分析を行っていませんでした。気象やアイスクリーム、野球など身近なデータを扱うことで、問題の解決方法がより導きやすくなると考えました。

実生活に近い問題解決力を養う

―プログラミングやデータ分析、アプリ制作といった課題をどのように評価していますか。

塩屋 本校では学習指導要領の3つの観点に以下の項目を設定し、それぞれ4:4:2の比率にしています。

  • 知識・技能…期末考査、サブノートの取り組み、プログラミング課題
  • 思考・判断・表現…メディア編集、アプリ制作、データ分析
  • 主体的に学習に取り組む態度…活動の振り返り、相互評価、ノートへの記述
  • プログラミングでは問題解決のアプローチが最適なのか、データ分析では定量的なデータを用いて説明できているかなど、論理性を重視しています。アプリ制作については自由度が高いという特徴から、今後はコンペティション形式で相互評価するといった方法も視野に入れています。

    ―情報科の先生を目指したきっかけを教えてください。

    塩屋 もともと大学で情報教育を専攻していたことが大きいです。また、情報科は自由度が高く、教員自身が色々工夫して授業できるところにも興味を感じていました。問題解決力を養うという観点では、情報科は他の教科より実質的な生活に結びつく要素が多いため、生徒の将来に直接的に役立つと感じたこともきっかけの一つです。

    後編では、同校の情報科教育を推進してきた副校長、小林道夫氏へのインタビューを紹介する。

    取材・文・写真:学びの場.com編集部

    ※当記事のすべてのコンテンツ(文・画像等)の無断使用を禁じます。

    ご意見・ご要望、お待ちしています!

    この記事に対する皆様のご意見、ご要望をお寄せください。今後の記事制作の参考にさせていただきます。(なお個別・個人的なご質問・ご相談等に関してはお受けいたしかねます。)

    pagetop