数学が苦手なうちのJKに、将来必要となるかもしれないデータ分析への抵抗感をなくしてもらう目的で記事を書いてきました。30回目の今回で一区切り、シーズン終了(修了)です。前回に引き続き、最終回も実際にデータを分析する準備をしていきましょう。
クラウドサービスを使えば解析環境を簡単に導入できる!
最近は高校生でも1人1台パソコンを持たされるところも多いようです。すごい時代になりました。 しかし、ソフト(=アプリ)を入れるとなると制限がかかってしまい、完全に自由に使えるわけではなさそうですね。 そんな人のために、知っておくと便利なクラウドサービスを紹介したいと思います。
ちなみにクラウドサービスというのは、自分のパソコン上でソフトウェアが動くのではなく、オンライン上で色々やってくれるもの。Google Chrome, Edge, Safariといったブラウザで操作できますが、インターネットへの接続が必要です。
Google(グーグル)
Spreadsheet(スプレッドシート)
これは学校でも使ったことあるかもしれません。緑色の表計算アプリです。主にデータテーブルを作成する目的で使います(作成の仕方は前回記事を参照)。
スプレッドシートはあくまで表計算アプリなので、高度な統計解析はできませんが、関数を使って簡単な計算を実行することができます。 下に挙げるものは使う機会が多いので、確認しておくといいかもしれません。
SUM
:指定したセルの合計を返すAVERAGE
:指定したセルの平均値を返すCOUNT
:指定したセルの個数を返すCOUNTIF
:指定した条件に該当するセルの個数を返すIF
:条件に応じた値を返す
作成したデータシートは、後で紹介する解析環境に直接読み込むこともできますが、まずは一旦パソコンにファイルとしてダウンロードする方がいいです。そのときはcsv形式*1を選びましょう(下)。
Colaboratory(コラボラトリー)
これを使えば、現在最も人気のあるPython(パイソン)というプログラミング言語を実行することができます。 Pythonとして習っているのかどうか知りませんが、「情報」の教科書に登場するプログラムはPythonをもとにしているようですね。
Pythonはデータ分析だけでなく、色々な用途で使われているので、プログラミングを勉強したいと思ったら、まずPythonから始めるといいでしょう。近年、機械学習・深層学習(ディープラーニング)の注目度が高くなっていることもあり、とても人気のある言語です。
使い方は簡単です(プログラミングが簡単という意味ではない)。下のようにGoogleドライブで新規ファイルを作成するだけで始められます。
Colabファイルを開くとしたのような画面が出てきます。この箱(セル)の中にPythonのコード(プログラムを動かすための文章)を書いていきます。
試しに下のコード(作:Chat GPT)をコピペして実行してみてください。セルの左端の▶️を押せば実行できます。
import matplotlib.pyplot as plt import numpy as np # サンプルデータの生成 np.random.seed(0) # 乱数のシードを設定 x = np.random.rand(50) * 100 # 0から100までの乱数を50個生成 y = x * 2 + np.random.normal(0, 10, 50) # xに対して線形の関係とランダムなノイズを加えたデータを生成 # 散布図の描画 plt.scatter(x, y) plt.title('Sample Scatter Plot') # タイトル plt.xlabel('X') # X軸のラベル plt.ylabel('Y') # Y軸のラベル plt.grid(True) # グリッドの表示 plt.show()
上のグラフが描けましたか?「コードで動かす」というと難しく聞こえますが、他の人やChat GPTが考えてくれたコードを利用できるので、とても便利です。
Posit Cloud(ポジットクラウド)
こちらは以前はRStudio Cloudと呼ばれていたもので、統計解析に特化したプログラミング言語であるR(アール)を実行することができます。
まずは下のリンクにアクセスしてください。
下の画面が表示されると思います。「GET STARTED」と書かれたボタンを押します。
すると下のようなプランを選ぶ画面になります。1番左の無料プランを選んでください。
下の画面になるので、$0と書かれているのを確認してから「SIGN UP」を押します。
次に下のようなアカウント作成画面が出てきます。Googleのアカウントでサインインすることもできますが、学校から供与されているGoogleアカウントで入ろうとすると学校側がPosit Cloudの利用を承認する必要があります(ひょっとしてメールアドレスを使っても学校の端末からはアクセスできないかもしれません。自分のタブレットがあればいいんですが。スマホだとちょっと画面が小さすぎ…。)
アカウントを作成してログインすると、下のような画面が現れるので、右上の「New Project」から「New RStudio Project」を選びます。ちなみに、その下にある「Jupyter」はPythonを実行するためのものですが、無料版では使えないみたい。
Posit Cloudが起動したら、左上の「緑プラスボタン」から「R Script」を選んで押します。
この時点で、下のように4つの区画が表示されていると思います。 それぞれの区画の役割を簡単に紹介しましょう。
左上に表示されているのは、さっき作成した「R Script(アールスクリプト)」です。スクリプトとはコードを書いた文書のことで、ここ*2にコードを書いていきます。
左下には「Console(コンソール)」と書いたタブがあります。ここはRというプログラムを実行する場所です。スクリプトを実行すると、コードがこの画面に飛んできてコードを実行し、続いて出力結果が表示されます。コードに誤りがあれば、エラーメッセージが表示されます。
右上には「Environment(エンバイロンメント, 環境)」というタブがあります。ここには、読み込んだデータや定義した関数など、現在Rが扱っているもの(オブジェクト, 対象物)の概要が表示されます。
右下には下のようなタブがあります。
- Files(ファイル):保存したスクリプトやグラフがファイルとして表示されます。
- Plots(プロット):グラフを描くと、このタブに表示されます。
- Packages(パッケージ):機能拡張パッケージを入れることで色々な解析を実行できるようになります(次説明します)。全て無料です。
拡張パッケージをインストールして機能を追加する
Rは拡張パッケージをインストールすることで、いろいろな機能を追加することができます。 標準よりもキレイなグラフを描けるようになる「ggplot2」というパッケージをインストールしてみましょう。
下の画面に示したように、PackagesタブのInstallボタンを押します。 出現した画面の2段目に、インストールしたいパッケージ名を入力して、Installボタンを押すとコンソール画面(左下)にインストールが実行している様子が流れてきます。
Rスクリプトを実行する
それでは試しに、下のコードをスクリプトエディタ(左上)にコピペして、実行してみましょう(これもChat GPTに書いてもらいました)。
# 必要なパッケージの読み込み library(ggplot2) # 乱数のシードを設定 set.seed(0) # サンプルデータの生成 x <- runif(50) * 100 # 0から100までの乱数を50個生成 y <- x * 2 + rnorm(50, mean = 0, sd = 10) # xに対して線形の関係とランダムなノイズを加えたデータを生成 # データフレームの作成 data <- data.frame(x, y) # ggplot2を使った散布図の描画 ggplot(data, aes(x = x, y = y)) + geom_point(colour="blue") + # 散布図の描画 ggtitle('Sample Scatter Plot') + # タイトル xlab('X') + # X軸のラベル ylab('Y') + # Y軸のラベル theme_minimal() + # テーマの設定 theme(panel.grid.major = element_line(colour = "gray"), panel.grid.minor = element_blank()) # グリッドの表示設定
スクリプトエディタにコピペした後、コード全体を選択して、右上にあるRunボタンを押します。
グラフを保存する
さっきのコードがうまく実行できていれば、右下のPlotsタブにグラフが表示されます。
このグラフを自分のパソコンに保存するためには、タブの近くにあるExportボタンから「Save as Image...」を押します。
下のような画面が出てくるので、ファイルの名前と画像サイズを指定します。
次はFilesタブを開いてみてください。さっき保存した画像(.png)の名前があると思います。このファイルにチェックを入れて、「More」→「Export...」を選びます。
出てくるウィンドウ(下)で「Download」を押せばダウンロード完了です。
おわりに
- 実際の操作は「習うより慣れろ!」です。まずはグラフを描かせる宿題で使ってみるといいかもしれません。
- Chat GPTに課金すると、ほとんど書いてくれますが、無料版のChat GPTでも結構教えてもらえます。
- 30回、読んでコメントくれてありがとう!