質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
R

R言語は、「S言語」をオープンソースとして実装なおした、統計解析向けのプログラミング言語です。 計算がとても速くグラフィックも充実しているため、数値計算に向いています。 文法的には、統計解析部分はS言語を参考にしており、データ処理部分はSchemeの影響を受けています。 世界中の専門家が開発に関わり、日々新しい手法やアルゴリズムが追加されています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Q&A

解決済

1回答

9877閲覧

Rでコマンドプロンプト

fermat

総合スコア183

R

R言語は、「S言語」をオープンソースとして実装なおした、統計解析向けのプログラミング言語です。 計算がとても速くグラフィックも充実しているため、数値計算に向いています。 文法的には、統計解析部分はS言語を参考にしており、データ処理部分はSchemeの影響を受けています。 世界中の専門家が開発に関わり、日々新しい手法やアルゴリズムが追加されています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

0グッド

0クリップ

投稿2017/06/06 19:43

「Rをコマンドプロンプトで実行する」方法は見つかったのですが
逆に「Rでコマンドプロンプトを実行する」方法はあるのでしょうか。

手元にあるR関連の本にもそれらしき記載は見当たりません。
ご存知の方がいらっしゃいましたら、よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Rからシェルコマンドや外部コマンドを使用したいということでしょうか?

でしたら shell関数 や system関数 をご使用ください。

R

1shell("dir")

or

R

1system('"C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe"')

【補足】

例えば、shell関数にてコマンド間を & で繋げることにより、複数のコマンド実行することが出来ます。
ですので、コマンドリストを予め準備しておくことにより

R

1cmds <- c("cd ..", "dir") 2ret <- shell(paste(cmds, collapse="&"), intern=T)

のように実行することが出来ます。

投稿2017/06/06 23:22

編集2017/06/07 01:52
magichan

総合スコア15898

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fermat

2017/06/07 03:00 編集

外部コマンドの実行だけではなく、コマンドプロンプトの関数全般を使えないかなと、 文字列を読み込んでコマンドプロンプトに送るみたいなことを想像しています。 質問分かりづらくてすみません。 追記: このコメントでの文字列というのは「For /f "delims=" %a in(・・・」みたいなものを想定しています。
YAmaGNZ

2017/06/07 00:48

どのようなコマンドを実行するのか分かりませんが、バッチファイルとして実行するのはダメなのでしょうか? もし、実行するコマンドを動的に変更したいというのであれば、バッチファイル自体を生成してから実行するとか
fermat

2017/06/07 00:56

コマンドプロンプト用のバッチファイルの中にRのコマンドを入れるというより Rのソースファイルの中にコマンドプロンプトの関数を入れるみたいな状況はできないのかなと思いました。 Rから少し使い慣れてきたコマンドプロンプトを呼び出せればと思った次第です(;・・) まだ勉強不足ですがRのパッケージ作りに応用していきたいと考えています。
magichan

2017/06/07 01:56

補足情報として複数のコマンドを実行する方法を追加しました。 このような方法で、 「文字列の読み込み」→「コマンドリストの生成(文字列操作)」→「シェルコマンドの実行」→「結果を処理」 の手順で処理するというのではダメなのでしょうか?
fermat

2017/06/07 02:47

うーむ。 R内部のコマンドであるshellとsystemでできることは実行ファイルの呼び出しに限られる感じですが、 実行ファイルに文字列も読み込ませると使い勝手が広がりそうですね。 コマンドプロンプトの関数が入った実行ファイルを作って…などふと考えましたが、いやいや 「もっとRに詳しくなって胡散臭いコード書くなよ」とRConsoleに叱られている気分になってきましたw 気軽にコマンドプロンプトとRの関数を使いたかったら、ビルド不要の他言語からRを呼び出すなど RConsole以外にも辿り着く道は工夫次第ですよね。 しかしながら、Rで何ができるんだろう?と色々サンプルスクリプトを試したり改造している状態なので 教えていただいたsystem関数shell関数使う機会がこれからもありそうです。 実際に文字列つけて組み込んでみましたが、うまく動いてくれています。ありがとうございました(^^)/
fermat

2017/06/07 22:23 編集

昨日は、かなりの寝不足だったこともあり、 実行ファイルに文字列を読み込ませる操作と複数の実行ファイルを動かす操作を 混同していました。大変失礼しました。 訂正です。 systemでは通らなかったのですがshellで通りました。 (何故か昨日は通りませんでした・・・。寝不足で何か間違っていたんだと思います・・・。) collapseで繋ぐ複数コマンドの操作に加え、internオプションの使い方も勉強になりました。 internを使うと"cd"がRでそのまま使える文字列(\\連続)として出力されるので重要ポイントですね。 色々とありがとうございました(^^)/
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問