R Programming Compiler という iOS 用のRのアプリがある。これを使えばスマホでRが使える。現状、他の選択肢は事実上ない(タブレットなら RStudio Cloud という手もあるが)。
使い方
起動すると、全体的に黒い画面になる(歯車マークから、白基調とどちらにするか選べる)。下に Source、Input、Output などのタブを選ぶボタンがある。コードを入力するには、画面最下部の Source をタップして Source 画面にする。
ファイル名を指定した入出力はできない。利用できる入出力は標準入力、標準出力、標準エラー出力のみである。だが、Input タブにデータを書くことで任意のデータの入力ができる。また出力はすべて Output タブに出てくる。右上の ▶ マークをタップすると、その時に Source タブに書いてあるコードが、一番上から全部実行される。
ユニバーサルクリップボード機能を使えば、mac 上でコードを書いて ⌘-C、スマホで ⌘-V できる。
スマホ上で書いたコードはスマホローカルに保存されるが、上部中央のファイル名をタップして、保存先に iCloud を選ぶことができる。Input タブで同様にして iCloud を選べば、大きなデータファイルも Input タブに読み込むことができる。これをコードからたとえば
dat <- (read.csv("stdin", header = F)
などとして読み込む。
Input タブに直接入力していく時は、最下行の行末に改行を入れた方がいいことがある。
プロット
base パッケージの plot も ggplot2 も使える。ただ、プロットはアプリ内課金の対象である。600円。プロットは Output タブの左上の、なにやら棒グラフっぽいアイコンをタップすると表示される。
library(ggplot2);
dat <- read.csv("stdin");
ggplot(dat, aes(x = Root, y = Fruit, colour = Grazing)) + geom_point();
R内で画像の形式を調べたり指定したりもコード上はできるが、実際にはすべてJPEGになる。プロットの右上のアイコンをタップすれば、他のデバイスなどにも容易に送れる。
感想など
メモリが小さいので1000x1000の行列の積みたいな大きなデータの解析はできないが、計算の速さ自体は十分実用的である。iCloud 経由のスクリプトやデータのやり取りもストレスなく行える。一方で、スマホ単体では文字入力は絶望的である。スクリプトは mac から取り込むか、Bluetooth キーボードが必須だと思われる。