高等学校および中学校の授業において、データサイエンスを体系的に学ぶことを目的とした教育プログラムを開発しました。
データサイエンスとは、さまざまなデータを分析・活用することによって、社会や経済の現象を理解し、新たな知見や価値を見いだす試みです。現代社会では、日常生活や企業活動、行政運営など、あらゆる場面でデータが蓄積されており、それらを適切に読み取り、活用する力が求められています。
例えば、売上データや顧客データを分析して将来の需要を予測したり、地域ごとの人口や産業構造の違いを比較して政策の効果を考察したりすることは、データサイエンスの典型的な活用例です。こうした分析を通じて、「現状を把握する」「要因を探る」「将来を見通す」といった思考力を養うことができます。
データサイエンスが注目されている背景には、
・情報化社会の進展により、時々刻々生成される大量かつ多様なデータ(ビッグデータ)を容易に取得できるようになったこと。
・コンピューターの処理能力が飛躍的に向上したことにより、複雑な計算を瞬時に行えるようになったこと。
・インターネットの普及により、データを効率的に共有・活用できる環境が整ったこと。
などがあります。
データサイエンスは、単にデータを集計して表やグラフを作成するだけではありません。平均や分散といった基本的な統計量を用いてデータの特徴を把握し、さらに複数の変数の関係性を分析したり、将来の傾向を予測したりするなど、段階的に高度な分析へと発展していきます。本教育プログラムで開発した教材は、こうしたデータサイエンスの基礎的な考え方と分析手法を、初学者にも理解しやすい形で学ぶことを目標としています。
教材は、Google Colaboratory上で動作する体験型教材として開発しました。Google Colaboratoryは、Webブラウザ上でPythonプログラミングを実行できる環境であり、特別なソフトウェアや複雑な設定は不要です。Googleアカウントとインターネット接続環境があれば、すぐに使用することができます。今回作成した教材は、アプリURL(https://ocha-algo.com/)やこのページの下にある、「データサイエンスを学ぶためのプログラムの紹介」から利用することができます。(Google Colaboratoryを利用するため、GoogleアカウントとGoogle Colaboratoryの導入が必要になります。Google Colaboratoryの導入方法は、以下を参照してください。)
Google Colaboratoryの導入方法(既に導入済みの場合は、「データサイエンスを学ぶためのプログラムの紹介」に進んでください)
まず、Google ChromeからGoogleドライブにアクセスし、以下の画面のように、「その他」の中にGoogle Colaboratoryがあるか確認してください。あればそれをクリックし、なければ、「アプリを追加」をクリックし、Colaboratoryを追加してください。
追加した場合は、以下のような画面が表示されることがあります。その場合は、一度ウィンドウを閉じて、再度Googleドライブにアクセスします。すると、今度は、Google Colaboratoryがあるかので、クリックしてください。
Google Colaboratoryの動作確認
Google Colaboratoryの動かし方を確認しましょう。
Google Colaboratoryを起動すると、以下のような画面になっていると思います。
この灰色の部分を「セル」と言います。
このセルの中に、以下に半角英数で以下のように入力し、Shiftキーを押しながらEnterキーを押してみましょう。
すると、その下に、「2」と表示され、さらに、新しいセルが表示されます。このようにしてプログラムを順番に実行していきます。
上記を含めて、いくつかのサンプルを用意したので、順番に実行してみてください(「警告: このノートブックは Google が作成したものではありません。」と表示されることがあります。これは、Google以外の人が作成したファイルを実行する場合、最初のみ表示されます。プログラムを実行したい場合は、「このまま実行」をクリックしてください)。
Google Colaboratoryの動作確認
データサイエンスを学ぶためのプログラムの紹介
ここでは、データサイエンスの基本的な考え方を学ぶためのプログラムを体験してもらいたいと思います。本プログラムでは、実際の株価データを用いて、
・データを取得する
・データの特徴を数値やグラフで把握する
・数式を使ってデータを近似する
・その近似結果を用いて将来の値を考える
という、データサイエンスの一連の流れを学びます。
株価のかんたん予測
株価データの取得
本教材では、インターネット上で公開されている株価データを使用します。
Pythonのライブラリを用いて、指定した銘柄の、指定した期間の株価データを取得し、分析に利用します。
銘柄については、今回は、日経平均を用います。分析に使用する期間は、プログラム中の
・開始日
・終了日
を変更することで自由に調整できるようになっています。
これにより、分析に用いるデータの範囲を変えると結果がどのように変化するかを体験的に学ぶことができます。
月ごとのデータへの変換
取得した株価データは日ごとのデータですが、そのままでは変動が細かく、全体の傾向を把握しにくくなります。そこで、本教材では、日ごとのデータを「月ごと」にまとめ、1か月あたりの終値の平均を計算し、新しい列とします。これにより、データサイエンスで使用される前処理を学ぶことができます。
直線による近似と未来の予測
続いて、月ごとの株価データを直線で近似します。
a, b = np.polyfit(x, y, 1)
によって、回帰直線の係数と切片を求めます。
さらに、この係数と切片を用いて、1年後の株価がどの程度になるかを計算します。その結果をグラフに描画します。この未来の予測は、「株価データの取得」で設定した、開始日と終了日を変更することで、予測が変わります。
二次式による近似と未来の予測
最後に、直線ではなく、二次式(多項式)を用いた近似もしてみます。二次式を用いることで、データの「曲がり」を表現できるようになり、直線とは違った予測をすることが可能になります。一方で、式が複雑になることで、未来の予測値が急激に増加したり減少したりすることもあります。この未来の予測も、「株価データの取得」で設定した、開始日と終了日を変更することで、予測が変わります。
関連リンク
・アプリURL(お茶の水女子大学附属学校における理系女性育成のための新たな教育プログラム開発)
















