関数はスクリプトファイル(この場合は[script.R]タブに表示されているファイル)に記述してもよいし、[R Interactive]ウィンドウで直接定義してもよい。ここでは取りあえず、[R Interactive]ウィンドウで定義する。ここではf2c関数としよう。
> f2c <- function(x) {
+ (x - 32) / 1.8
+ }
ご覧の通り、R言語では関数もオブジェクトであり、「<-」演算子を用いて変数に代入する形で定義する。return関数で明示的に戻り値を指定しない限りは、最後に実行された式の値が戻り値となる。このため、関数本体である計算式の結果がf2c関数の戻り値となる。カ氏からセ氏への変換は「(カ氏温度−32)÷1.8」で求められるので、このような内容になっている。
以下に実行結果を示す。
> f2c(50)
[1] 10
こんな関数を作っても、大量のデータを保持しているtemp変数には使えないと思うかもしれないが、そうでもない。実際に試してみると次のようになる。
> f2c(temp)
Time Series:
Start = 1912
End = 1971
Frequency = 1
[1] 9.944444 11.277778 9.666667 10.611111 9.666667 8.833333 9.888889
[8] 10.500000 9.611111 11.055556 10.444444 9.777778 9.611111 10.333333
…… 省略 ……
全ての要素について関数が適用されていることが分かるはずだ。このようにR言語では多要素で構成されるオブジェクトについても関数が直感的に適用できる。
再利用性が高い、あるいは何度も書き直してみるような場合には、[R Interactive]ウィンドウで関数を定義するよりもスクリプトファイルに記述をした方がよいだろう。これには単にスクリプトファイルにその内容を記述するだけだ。記述した関数を[R Interactive]ウィンドウで使用するには、スクリプトを記述したタブでどこかを右クリックしてコンテキストメニューから[Source R Script]を選択する。
これにより、スクリプトファイルの内容が保存されるとともに[R Interactive]ウィンドウには例えば次のような行が挿入・実行され、関数を利用できるようになる。
> source("スクリプトファイルのパス\\script.R")
次にこのデータのグラフを描画してみる。
グラフの描画にはplot関数を使用する。プロンプトに「plot(temp)」と入力した結果を以下に示す。
このデータは単純なもの(タイムスパンと1年ごとの平均気温のみで構成される)だったので、関数呼び出し一発できれいなグラフが描けたが、実際にはX軸にはどの要素を指定するか、Y軸にはどの要素を指定するかをきちんと決定する必要があるだろう。また、ここでは触れないが、データを解析し、その結果から何らかのグラフをさらにこの上に描画するといったことも可能だ。
なお、ツールバーからは描画したグラフをファイルに保存したり、クリップボードにコピーしたりできる。
RTVSには[Variable Explorer]ウィンドウがある。これを表示するにはメニューバーから[R Tools]−[Windows]−[Variable Explorer]を選択する。
このウィンドウには[R Interactive]ウィンドウで定義されている変数の値が表示される。上の画面では定義したf2c関数と、R言語が標準で提供するデータ「nhtemp」を代入した変数tempの値が表示されている。
変数tempが参照しているデータは単純なものなので、このウィンドウの良さがよく分からない。そこで、[R Interactive]ウィンドウで別のデータを変数に代入してみよう。
ここではプロンプトにまず「rm(temp)」を、次に「cars <- mtcars」を入力したものとする。rm関数は引数に指定した変数を削除する関数だ。これにより、変数tempが削除され、[Variable Explorer]ウィンドウからもこの変数が削除される。「mtcars」はアメリカの雑誌『Motor Trend』で行われたロードテストの結果を抽出したデータを含んだものだ。
[Variable Explorer]ウィンドウは次のようになる。
[Value]列に虫眼鏡アイコンがあることに注意されたい。これをクリックすると、このデータをグリッド状に整理したものを表示してくれる。[Variable Explorer]では分かりにくいデータが視覚的に分かりやすいものになる。
もう1つ、RTVSには[R History]ウィンドウも用意されている。このウィンドウにはこれまでに[R Interactive]ウィンドウで実行したものが履歴として保存されている。上述のコラムでも述べたように[R Interactive]ウィンドウではカーソルキーやマウスを使用して、以前に実行/評価した関数や式を選択/編集して再実行/再評価できるが、履歴が増えてきたときにはこのウィンドウが役に立つだろう。
今回はRTVSのインストール、RTVSが提供する各種のウィンドウに触りながらR言語の初歩の初歩について見た。次回はR言語が提供するデータを解析しながら、R言語での統計解析の初歩について見ていこう。
Copyright© Digital Advantage Corp. All Rights Reserved.