2016-06-25 5 views
2

結果パイプRスクリプトにサブプロセスを、使用:Pythonの - 私は<code>subprocess</code>を使ってPythonによるRスクリプトを実行しようとしているが、残念ながら、私は継続的に、次のエラーを取得していますWinerror 2

WindowsError: [Error 2] The system cannot find the file specified 

これは非常にあります私は何度も何度もパスをチェックしてきたので、イライラしています(C:/、別のディレクトリに移動したり、実行しようとしているRスクリプトを変更したなど)。私はCompSec環境変数もチェックしていますが、これも正しいです(Windowsシステムでは、IDEに直接チェックしませんが、Spyder)。私はPython 2.7とPython 3.5でそれをやってみましたが、いずれのバージョンも動作しません。

import subprocess 

def sort_ByInputColumn(inputPath, inputFileTermination, sortColumn, outputPath, outputFileTermination): 
scriptPath = "C:/Users/Kyle/Documents/Rscript_SortByInputColumn.R" 
subprocess.call(["Rscript", scriptPath, inputPath, inputFileTermination, sortColumn, outputPath, outputFileTermination]) 

fileName = 'Alabama' 
outputPath = "C:/Users/Kyle/Documents/HillData/Data/Output/Module2/" 
sortColumn = str(16) 
inputTermination = fileName + 'Module2NN_WorkCounty_Work.csv' 
outputFileTermination = fileName + 'Module2NN_SortedWorkCounty.csv' 
sort_ByInputColumn(outputPath, inputTermination, sortColumn, outputPath, outputFileTermination) 

私は関係なく、私が(試してみて、それを動作させるためにも、露骨にコピー&ペーストthis tutorial)を実行しようとするどのようなコードこのエラーを取得していないという事実は、私はのように感じさせる:次のように

コードが行きます私が見ていないほど深い(または非常に明白な何かが)進んでいます。

この問題に関するご意見をお待ちしております。

+0

コマンドをcmdで実行できますか? – Natecat

+0

実行可能ファイルへのフルパスを提供してください(_Rscript_は実行するプログラムであると仮定します)。 – handle

+0

スクリプトコマンドの先頭に "cmd/c"を付けます。実行可能でないかぎり、 'subprocess'モジュールは' os.system'とは違ってあなたのためにexecを実行しません。 –

答えて

2

は、この最も厄介なと恐ろしい問題を解決するために、私は(それが​​あるスペースなしのディレクトリにRを再インストールし、その完全なパス機能を持つRscriptと呼ばC:/Program Files/R/R-3.3.1/bin/Rscript.exe"からProgram Filesためのスペースを持っており、それは、コマンドラインベースなので、これはsubprocessを殺し、私は推測する)。今回は、うまくいった。

this similar questionを参照してください。私はどこでこれについてのヒントを得ましたか?

関連する問題

 関連する問題