統計解析環境「R」
中西渉
名古屋高等学校

2011 年 2 月 20 日
2.2

1 R とはR の長所

まず，無料で利用できること，マルチプラット

R は統計解析に適したプログラミング言語およびフォーム（Windows，Mac OS X，Linux）である

その実行環境であり，GPL に基づいて配布されてことがあげられる。情報教室はもちろん，教師や生いる。S 言語というものを元にして作られたらしい

徒が家庭のパソコンにインストールすることについ（実物をさわったことがないのでどのようなものかても何の負担もない。

はわからないが）。

グラフは決して派手ではないが，箱ひげ図やヒストグラムをはじめ，多くの種類のグラフを簡単に

2 Why R?

作ることができる。また，PDF ファイルや PNG，2.1 他の選択肢

JPEG 画像として出力すれば文書に取り込むこと統計といえば Excel や SPSS が思い浮かぶこともできる。

も多いだろうが，高校生に統計を教える場合にそれプログラミング言語であることのメリットも大きらが適切な選択肢であるとは思わない。

い。スクリプトを書いておけば，それによって定型Excel の統計関数やそのヘルプには多くの問題が的な業務に対応できる。私自身も入試に関する資料あったことが指摘されている [1]。今はどの程度改作成の一部を R で行なっており，そのスクリプト善されたのかわからないが，当時抱いた不信感は未は年度をまたがって共通で使えるので，過去との比だに根強く残っている。[2] で [3–5] が紹介されて較も容易にできる。

いることからすると，今でも Excel は統計用途では3 デモ使い物にならないのではないだろうか。また [6] にあるような箱ひげ図や幹葉図，ヒストグラムが簡単

では，実際のデータでどのようなことができるに描けないし*1 ，一方でひどい 3D グラフが多用さか，実演してみよう。

れる原因を作り出してもいる（特に 3D 円グラフ）。

SPSS は研究などの現場で多く使われているし，高機能であることは間違いない（実物を見たことはないけど）。しかし，とにかく高価だ。大学でも費用の捻出に苦労しているという話を聞くので，高校でそれをまかなうのはかなり難しいだろう。

*1 Excel2007 の統計アドオンにあるヒストグラムを試したことがあるが，あれをヒストグラムと呼ぶのは. . . 。

1

data <- read.csv("pitcher.csv")
mean(data$球速)
boxplot(data$球速)
hist(data$球速)
table(data$球種)
pie(table(data$球種))
by(data$球速,data$球種,mean)
boxplot(球速 ~ 球種,data=data)4 利用場面
R は学校において，次のような場面で用いることができるだろう。

4.1 統計の授業
新学習指導要領の数学 I「データの分析」では四x <- numeric(length=10000)
for(i in 1:10000){x[i]<mean(rnorm(n=100,mean=50,sd=10))}
mean((x-mean(x))^2)

4.3 業務

分位数や箱ひげ図が導入される。R ならそれらを簡我々教員の日常業務において，統計処理を必要と単に出力することができる。センター試験（現行）する場面はいくらでもある。まずは自分の手元の作

数 II・B の第 5 問でも分布と相関係数の関係がよく業を R でやってみてはどうか。自分がやらないこ出題されるが，たった 10 個の資料で相関というのと，必要性を感じないことを生徒に教えても何の意も無理がある。センター試験では手計算できなくて味もないのだから。

はいけないから 10 個なのだが，パソコンを使わないと処理しきれないような数の資料を扱ってこそ統

5 情報入手先計の意味がある。

5.1

4.2 シミュレーション

Web

R の公式サイト [9] にドキュメントがある。日本

プログラミング環境であり，ベクトルを柔軟に取語のサイトで参考になるものも多いので，あちこちり扱うことができるので簡単に数理モデルのシミュ拾い読みするのがいいと思われる [10–13]。

レーションを行なうことができる。たとえば，ラン

5.2 書籍ダムに打った点が円の中に入る割合から円周率の近似値を求めるシミュレーションは

x <- runif(1000)y <- runif(1000)mean(x^2 + y^2 < 1) * 4
というようにループも使わずに書ける [2]。

紙の本が手元にあると何かと安心である。私は[8, 14] で勉強しているが，以前に比べればたくさんの本が出版されている。R を中心にした本もある
し，統計学を中心にした本もあるので，自分に合ったものを選ぶのがいい。
5.3 勉強会
名古屋大学大学院国際開発研究科の阪上辰也氏が以前，表計算のマクロなどを用いて統計の実習教材を作ったことがある [7]。しかしマクロのコード中心になって Nagoya.R という勉強会が数回催されを理解させることはハードルが高いので，生徒にした。毎回前半に初心者講習会を行なっていて，そのてみればブラックボックスであるプログラムを操作

テキストは [15] で公開されている。これを見て実しているだけだった。しかし R なら少しのコマン際に操作をすることで，基本中の基本は押さえるこドを並べるだけでそういった「実験」ができる。たとができるだろう。

とえば標本平均の様子を調べたいなら，次のようなNagoya.R 以外にも Tsukuba.R，Tokyo.R，Os-計算をしてみればいい [8]。これは平均 50，標準偏aka.R などの地方コミュニティがあり，2010 年 11差 10 の母集団から取り出した大きさ 100 の標本の月にはそれらが集まって Japan.R という勉強会が平均を 10000 回とって，その標準偏差を求めるもの開かれた。

である*2 。

6 短所
R の導入を検討するにあたって，現時点で問題になりそうなことをいくつかあげておく。

*2 標準偏差の計算に sd を用いていない理由は後述。

2の RExcel を用いる方法もあるのかもしれないが，varp = function(x) {var(x)*(length(x)-1)/length(x) }stdevp = function(x) {sqrt(varp(x)) }

それはそれで別の面倒を生むかもしれない。などの形で定義しておけばいいだろう [2]。

■CUI 設定をすべて関数やコマンドに引数として与えなくてはいけないことが，ハードルの高さになってしまう。R Commander や Excel アドイン

■日本語対応R では変数にも日本語が使えるし，7 まとめ日本語を含むデータを扱うこともできる。ただし文字列処理に関してはいくらか疑問に思うところがな

現時点では新指導要領数学 I の「データの分析」

いこともない [16]。また，ヘルプが英語であることがどのような扱いになるのか正確にはわからない。

も一つの壁となるだろう。

漏れ聞くところによると，この単元をできるだけ軽それ以外にも次のような問題があるので注意されく扱えるように配慮している教科書が作られていたい（Windows 特有の現象かもしれない）。

るという。なるほど，それは一部の教師に需要がありそうだ。同僚に話を聞いても，四分位数など新し• Windows 用インストーラを日本語で実行する

い内容*3 についてよく知っている者は少ない。新しと途中で文字化けする（読めなくてもそのままい内容を勉強したくない教師にとっては，申し訳程進めて問題ないのだが，気持ち悪いので言語を度の内容で済ませられる教科書がありがたいのだ

聞かれたときに ‘English’ を選択する。それでろう。

も実行環境は日本語になるので問題ない）。

しかし，日本の教育で今まで余りにも統計をやら• GUI 設定でフォントを「MS Mincho」など日なさすぎたことが問題なのだ。それは今に始まった

本語文字を含むものに変更しないと，いくつかことではなく，私の世代でも「確率・統計」はの場面で文字化けする。

Pの計算の応用にすぎず，推定・検定は授業で扱われ■資料発行される書籍がかなり増えたとはいえ，なかった。そのためか，マスコミにはデタラメな手頃な内容のものが多くあるとはいいがたい。大学

グラフがあふれている。[17] は 40 年も前から読ま生以上を対象とした本ばかりで，高校生に適切なもれているというのに。このことについて，情報教育のが見つけられないことが不満だ。いいものがあっに携わる者の何人かは警鐘を鳴らし続けているし，たら是非とも教えてほしい。

私も機会を見つけては意見を述べるようにしてき■質問できる人 困ったときに質問できる人が職場た [7, 18, 19]。

内にいるかというと，正直厳しいと言わざるを得な

我々の仕事は生徒が「知るべきこと」を教えるこい（ネットを通じてなら可能だが）。実際には，今とであるのに，どうも「知ってること」に偏りがちの時点で使い始める人がむしろ質問される側の人にであるように思われるのだ。統計ソフトといったとなるのだろう。

きに Excel と短絡してしまうのもその一つではな■分散・標準偏差var や sd で計算される分散やいか。

標準偏差は，分母が n ではなく n − 1 である。この学びをやめた者は教壇を降りなくてはいけない。

ことは欠点ではないのだが，高校の教科書では分母が n のものしか扱わないのだから，その点を補う必要はある。具体的には*3 といっても 30 年以上前のものだが3参考文献
[1] 青木繁伸「Microsoft Excel を使った統計解析」
http://aoki2,si.gunma-u.ac.jp/lecture/stats-by-excel/[2] 奥村晴彦「R を使った情報教育」，情報処理学会「SSS2010 情報教育シンポジウム論文集」pp.77–80,
ISSN 1344–0640[3] B.D. McCullough and David A. Heiser, “On the accuracy of statical procedures in Microsoft Excel
2007,” Computational Statistics and Data Analysys 52, 4570–4578(2008).
[4] A. Talha Yalta, “The accuracy of statistical distributions in Microsoft R Excel 2007,” Computational Statistics and Data Analysys 52, 4579–4586(2008).
[5] B.D. McCullough “Microsoft Excel’s ‘Not The Wichmann-Hill’ random number generators,” Computational Statistics and Data Analysys 52, 4587–4593(2008).
[6] John Wilder Tukey, “Exploratory Data Analysis”, Addison Wesley, 1977.
[7] 中西渉「情報の授業で統計を扱う」，情報処理学会「SSS2007 情報教育シンポジウム論文集」 pp.11–14,
ISSN 1344–0640[8] 山田剛史，杉沢武俊，村井潤一郎『R によるやさしい統計学』（オーム社，2008）[9] R Development Core Team, The R Project for Statistical Computing. http://www.r-project.org[10] 奥村晴彦「統計・データ解析」http://oku.edu.mie-u.ac.jp/~okumura/stat/[11] 青木繁伸「R による統計処理」http://aoki2.si.gunma-u.ac.jp/R/[12] 舟尾暢男，R–Tips http://cse.naro.affrc.go.jp/takezawa/r-tips/r.html[13] 岡田昌史，RjpWiki http://www.okada.jp.org/RWiki/[14] 舟尾暢男，高浪洋平『データ解析環境「R」』（工学社，2005）[15] Nagoya.R Wiki http://corpus-study.info/nagoyar/[16] 安部晃生「R で 2 ちゃんねるを読んでみた」http://blog.recyclebin.jp/archives/1375[17] ダレル・ハフ『統計でウソをつく法』（講談社ブルーバックス，1968）[18] 中西渉「情報の授業における統計の扱い」http://www.meigaku.ac.jp/~watayan/doc/20061021/
2006 年度・第 55 次愛知県教育研究集会[19] 中 西 渉「 こ ま け ぇ こ た ぁ い い ん だ よ 」http://www.meigaku.ac.jp/~watayan/doc/20100508/
Nagoya.R #2 (2010)4