R 入門 (3)
公衆衛生学教室セミナー

2004 年 7 月 1 日 中澤 港

今回は，R をメニューで操作可能にするパッケージ R Commander の使い方を中心に説明する。
（注）この文書において，\は，半角の￥記号を意味する。

1 R-1.9.1 日本語対応 Windows 版のインストール
第１回に説明したが，新バージョンである 1.9.1 が 2004 年 6 月下旬に公開された∗1 こともあり，図解しておく。

CD-R（予め焼いたもの。中身はすべてダウンロードできる）をドライブに入れ，マイコンピュータから開くと，右図に線で囲って示すように，rw1091-i18... というファイルがあるので，それをダブルクリックする。

ウィンドウが開いてインストールを開始するかどうか聞いてくるので OK をクリックする。

ライセンスを読んで確認するように促されるのでスライドバーをドラッグして最後まで読む。

∗1 http://r.nakama.ne.jp/R-1.9.1/binary/win32/から日本語対応版がダウンロードできる。ただし MacOS については日本語対応版バイナリは未公開なので公式版，つまり英語版を使うしかない。しかし，MacOS では，Java から R を呼び出す JGR（http://stats.math.uni-augsburg.de/JGR/）という環境を使えば日本語も通るという報告がある。

1

I accept の方にチェックを入れて Next をクリックする。

枠内にインストール先ディレクトリを指定して Next をクリックする。通常はデフォルトのままでよい。

必要なコンポーネントにチェックを入れてから Next をクリックする。通常は全部入れればよい。

スタートメニューフォルダを指定してから Next をクリックする。通常はデフォルトのままでよい。

追加インストールオプションにチェックを入れてからNext をクリックする。オプションは上から順に，「デスクトップに起動用アイコンを作成」「.Rdata という拡張子をR に関連付け」「R のパスを (D)COM サーバで使うためにレジストリに登録」であるが，必要を感じなければチェックしなくてもよい。

2

インストール実行中。

暫く待って右の画面が出たら，無事に R のインストールは完了なので Finish をクリックする。

R を起動するには，スタートメニューからプログラム→ R→ R 1.9.1 を選べばよい。面倒ならこれをデスクトップなどにコピーしておいてもよい。

無事に起動すると，このウィンドウが表示され，赤い >マークの右でカーソルが点滅して入力待ちとなる。これをプロンプトと呼ぶ。

2 R Commander パッケージのインストール
インターネットに接続された環境であれば R Commander パッケージのインストールは，プロンプト
に対して

¶

³

install.packages("Rcmdr")µ´∗2とすればよいが ，ここでは CD-R からインストールする方法を紹介する。

∗2 R-1.9.1 に Rcmdr-0.9-9 をインストールするなら，予め car パッケージを入れる必要はなくなった。自動的に必要なパッケージもダウンロードしてインストールしてくれる。

3

R のプロンプトに対して，まず¶³

setwd("g:/libraries")µ´と入力し，作業ディレクトリを CD-R 内の各種ライブラリが圧縮保存されている場所に指定する。もちろん CD-Rを入れたドライブが E:ドライブであれば，g:の代わりにe:としなければならない。続けて，¶³source("instlibs.R")µ´として，そのディレクトリに入っている，すべての圧縮パッケージをインストールするために予め用意した R の命令文を書き連ねたファイルを読み込んで実行させる。

ディレクトリ内のパッケージが順次無事にインストールされたことが表示され，最後にアップデート中と表示されて止まる。これは作業ディレクトリが CD-R 上にあって書き込めないためなので，Esc キーを押して中断すればよい。
これを避けるためには，CD-R の中身を予めハードディスクなど，書き込み可能なメディアにコピーしてからインストール作業をすればよい。

3 R Commander を起動する
ここではオリジナルの R Commander を使ったが，メニューはテキストファイルで構成されているので，中間栄治さんが公開されているようなテキストファイルと入れ替えれば（または自分で書き換えれば）メニューを日本語化することは簡単である∗3 。また，R Commander を使うには，R Console のメニューの GUI Preference で，予め SDI にしておく方がよい。

他のライブラリを使えるようにするときも基本的に同じだ
が，R Commander ライブラリを呼び出すには，¶³library(Rcmdr)µ´と入力する。エラーが１つでるが無視してよい。

∗3 C:\Program

Files\R\rw1091\library\Rcmdr\etc\Rcmdr-menus.txt が標準状態でのメニューファイルのパスである。
日本語対応版の R ならば，このファイルをメモ帳などで書き換えれば，それだけで R Commander のメニューを書き換えることが可能である。

4

他のライブラリとは異なり，R Commander ライブラリは，呼び出すだけで R Commander のウィンドウが起動する。

4 R Commander を使ってみる
使い方の例として，R Commander に入っているデータ，Sahlins を使って，散布図を書き，回帰分析をしてみる。Sahlins は，文化人類学者マーシャル・サーリンズが，有名な『石器時代の経済学』∗4 の中で中央アフリカの Mazulu 村 20 世帯の農業生産について報告しているデータである。

Sahlins というデータフレームが使えるようにするには，プルダウンメニューの Data から Data in packages→ Read data set from an attached package... と選んで出てくるパッケージリストの中から car を選ん
で OK をクリックし，表示されるウィンドウで Sahlinsを選んでクリックすればよい。

ここで Edit data set をクリックすると，データエディタが起動する（編集可）。このデータフレームには con-sumers と acres という２つの変数があることがわかる。
consumers は各世帯の農業従事者数に対する消費者の人数比を意味し，acres は各世帯の農業従事者１人あたり耕作面積を意味する変数である。エディタを閉じるにはプルダ
ウンメニューの File から close を選ぶ。

次に consumers と acres の関係をグラフで見てみる。プル
ダウンメニューの Graphs から Scatterplot を選ぶ。

∗4 文明の進歩とともに余剰が増えて余暇ができてきたはず，という迷信に反するデータを出し，実は狩猟採集経済に生きる人々の方が労働時間は短くて済むことを示した，経済人類学の先駆的な本である。

5

現 れ る ウ ィ ン ド ウ で ，x-variable と し て acres を ，y-variable として consumers を選び，OK をクリックする。

横軸に acres，縦軸に consumers が取られた散布図が描かれたウィンドウが開く。軸の外側に，各々の変数についての箱ヒゲ図も描かれ，赤の点線で回帰直線が，実線でスムージングした近似曲線が重ね描きされる。プルダウンメ
ニューの File から Print を選べば，グラフをそのまま印刷することもできる。Save as でグラフィックファイルとして保存できるし，Copy to the clipboard でビットマップ画像またはメタファイルとしてクリップボードにグラフを記憶させられる。Close Device を選べばこのウィンドウが閉じる。

次 に 回 帰 分 析 を し て み る 。R Commander の プ ルダ ウ ン メ ニ ュ ー の Statistics か ら Fit models のLinear Regression を選ぶ。

散布図を描くときと同様に設定ウィンドウが開くので，Re-sponse variable として consumers を選び，Explanatoryvariables として acres を選んで OK をクリックする。なお，ここでは単回帰なので説明変数は１つしか選ばないが，重回帰分析をする場合は，ここで複数の説明変数を選べばよい。

6

R Commander のウィンドウの下側に単回帰分析の結果が表示される。回帰式が¶³

consumers = 0.9321 + 0.2733 * acresµ´と推定されるが，回帰係数がゼロであるという帰無仮説の下でこの値が偶然得られる確率が 0.1026 であり，自由度調整済み相関係数の２乗の値から acres のバラツキがconsumers のバラツキの 9.34%しか説明しないことがわかる。

R Commander を終了するには，プルダウンメニューのFile から Exit の From Commander を選ぶ。R Commander で実行した命令が記録されている上側ウィンドウの中身をスクリプトと呼び，このメニューの Save script で保存できる（保存したスクリプトは任意のテキストエディタで編集できるし，Load script from file... で呼び出して実行できる）。

Exit?と確認を求めるウィンドウが現れるので OK をクリックする。

Save script file?と確認を求めるウィンドウが表示される。スクリプトを保存したければ「はい (Y)」をクリックする。

名前を付けて保存するウィンドウが現れるので，ディレク
トリとファイル名を適当に選んでから「保存 (S)」をクリックする。続けて Save output file?と確認するウィンドウが現れるので，「はい」と答えれば，グラフ以外の実行結果が表示されている下側ウィンドウの中身を保存できる。

7

5 もう少し大きなデータなら
Nakazawa M, et al.: Serum biochemical data of the Gidra in lowland Papua New Guinea: Consideration of their normal ranges. J. Nutritional and Environmental Med., 10: 153-162, 2000. において，パプアニューギニア低地に居住するギデラと呼ばれる人々の血清生化学検査値の分析結果を報告した。SAS によって統計解析をしたデータファイルの元になったタブ区切りテキストファイル（変数名が１行目に入っていて欠損データのところには何も入っていないもの）を，エディタの検索置換機能を使って欠損を NA にしたファイルを作成し，これを gidra.txt とした。R Commander によって TABLE 3 とTABLE 4 を求める方法を示す。

R Commander を呼び出しておき，まずプルダウンメニ
ューの Data から Import Data，from text file を選ぶ。

テキストファイルをどういう形式のデータとして読み込むかを指定するウィンドウが開くので設定後 OK をクリックする。タブ区切りテキストの場合は，Field Separator
は Other で Specify のところを\t とする。

読み込みたいテキストファイルを指定して，「開く」をクリックする。

Edit data set をクリックするとデータエディタが開いて，ちゃんと読めていることが確認できる。

8

TABLE 3 の 分 析 で は 男 女 別 に 村 落 群 間 の 比 較 が 必
要 な の で ，ま ず 村 落 番 号 か ら 村 落 群 を factor と し て
再 コ ー デ ィ ン グ す る 。プ ル ダ ウ ン メ ニ ュ ー の Data でManage variables in active data set から recodeを選ぶとウィンドウが開くので，再コード化の元にする変数，新しい変数名，再コード化定義式を設定する。

Make new variable a factor にチェックが入っていないとKruskal-Wallis 検定ができないので注意。
次 に 男 女 別 に デ ー タ の サ ブ セ ッ ト を 作 る 。Data のActive data set の Subset active data set を使う。
元データファイルには，SLP という変数で，1 が男性，2 が授乳中でない女性，3 が授乳中の女性とコードされている。

開くウィンドウで，Subset expression のところに SLP==1とし，Name for new data set のところに m.gidra とした。

女 性 の デ ー タ セ ッ ト を 作 る に は ，一 度 全 体 の デ ー タを active に し 直 さ な く て は な ら な い の で ，Data のActive data set から Select active data set を選んで，開くウィンドウで gidra を選んで OK をクリックする。

9

男性のサブセットを作ったときと同様にし，Subset ex-pression で (SLP>=2) とすれば，女性のサブセット f.gidraを作れる。この段階では f.gidra が active になっている

プ ル ダ ウ ン メ ニ ュ ー のStatistics

でNonparametric tests から Kruskal Waliis test...
を選ぶ。

開くウィンドウで Groups として VG，Response variableとして GGTP を選んで OK をクリックすればγ-GTP レベルに村落群間で差がないかの検定ができる。

検定結果の前に村落群ごとの中央値も自動的に計算される。

Response variable は１つしか指定できない。いちいちメニューから選び直すのは面倒なので，R Commander の上側ウィンドウでカットアンドペーストを使って編集後，実行させたい部分を選択して Submit をクリックすると，選んだ部分のコマンドが一気に実行できる。

10

TABLE 4 の Spearman の順位相関係数行列を計算するには，プルダウンメニュー Statistics の Summaries からCorrelation matrix... を選ぶ。

Type of Correlation で Spearman のところにチェックを入れ，計算したい変数を（いくつでも）クリックして選び，OK をクリックする。

相関係数行列が一気に計算され，R Commander の下側に表示される。残念ながら相関係数がゼロという帰無仮説の検定結果はこれでは出てこないので，一つずつ計算するしかない。

プ ル ダ ウ ン メ ニ ュ ー の Graphs か ら 選 べ ば ，Scatterplot matrix を作ることもできる。開くウィン
ドウで必要な情報を設定する。

11

得られる散布図行列。対角線上には各変数の分布が表示される。

12