![]() |
ノート/R/Rを使ってみる2https://pepper.is.sci.toho-u.ac.jp:443/pepper/index.php?%A5%CE%A1%BC%A5%C8%2FR%2FR%A4%F2%BB%C8%A4%C3%A4%C6%A4%DF%A4%EB2 |
![]() |
ノート/ノート
ノート/R ノート/R/Rを使ってみる
訪問者数 1379 最終更新 2010-03-04 (木) 16:33:32
計算のパラメタを少しずつ変えながら、グラフを描きたい。
でも、関数を毎度呼び出すのも面倒。
# Test terminal input u <- array(c(1,2,3,4,5,6),c(3,2)) while (({cat("終了(q), 印刷(p), データ編集(e)⇒"); c = readline(prompt="")}) != "q") { # if (c == 'e') { # Edit u2 = edit(u) # Edit data frame print(u2) while (({cat(" セーブ(s), 印刷(p), 廃棄(q)⇒"); c2 = readline(prompt="")}) != 'q') { if (c2 == 's') { u = u2 break } else if (c2 == 'p') { print(u2) } } } else if (c == 'p') { print(u) } } cat("終了\n")
いくつかのポイント
[1] "終了(q), 印刷(p), データ編集(e)⇒"cat()だと、何も付かない。その代わり行末の改行をしないので、必要なら自分で"\n"を入れる。今回は敢えて入れないで、入力促進メッセージと同じ行に、入力をいれさせることにした。
終了(q), 印刷(p), データ編集(e)⇒ &color(red){q};
c = scan(what="character",nmax=1,quiet=TRUE)結局readlineでもうまくできる。
c = readline(prompt="")
数値をインタラクティブに入力すると
x = readline(prompt="") s = 0 for (i in 1:x) { s = s + i cat(paste(s,'\n')) }
この場合、読んだ値xは文字から自動的に数値に変換されている。
端末上で変数の内容を編集させるには、edit関数が使える。