0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Rscriptでコマンドラインで入力を受け付ける書き方

Last updated at Posted at 2019-11-04

####必要性

Rは通常は,Rstudioなどを使って,対話的に行う方法が主流。

readline関数を用いるとRstudioでは対話的な入力が可能だが,Rscriptによるコマンドラインにして,実行すると入力を待ってくれなくなるので,使用できなくなる。

このようなコマンドラインからの入力を受け付ける方法は,大量の仕事を自動化したい際にはとても役立つ。

こうした方法は,Pythonやshell-scriptでの記述は楽だが,未だに分野によってはRで作成された関数を必要とする場面もまだ残っている。

####コードの中身

たとえば下記のような書き方をして

inputAnswer.R
#!/usr/bin/env Rscript

question = "今日は何月 ? : "
cat(question)
Ans = readLines(file("stdin"), n=1)
print(Ans)

その後にshellで

#実行可能にする。
chmod +x inputAnswer.R

#実行する。(2行目#以後は入力値)
./inputAnswer.R
今日は何月 ? : #10月
[1] "10月"

となる。

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?