2017-01-05 1 views
0

matlab에서 R 스크립트를 실행하고 싶습니다.matlab에서 두 개의 명령 행 명령을 실행하십시오.

내가 사용하고 cmd에서 완벽하게 R 코드를 실행할 수 있습니다

cd "C:\Program Files\R\R-3.1.3\bin\x64" 
R CMD BATCH "C:\Users\name\Desktop\Code.R" 

그러나 매트랩 나는이 두 개의 명령어를 실행하는 방법을 잘 모르겠습니다.

system('cd "C:\Program Files\R\R-3.1.3\bin\x64"') 

커멘드 라인 명령을 실행 : 첫째, 내가 사용할 수있는 것으로 나타났습니다. 그러나 나는 둘을해야합니다. 작성 :

system('cd "C:\Program Files\R\R-3.1.3\bin\x64"') 
system('R CMD BATCH "C:\Users\name\Desktop\Code.R"') 

이 작동하지 않습니다.

또한 한 줄에 여러 명령 줄 명령을 실행하는 것에 관해서도 this post을 보았지만 작동하지 않았습니다.

누구나 어떻게 할 수 있습니까?

+2

이 명령을 실행하는 배치 파일을 만들고 – Richard

+0

가 나는 것을 방지하기 위해 싶으면 전화, 그리고 코드는 가능한 한 투명하게하려면 :

코드는 다음이된다. 그래서 R 스크립트를 호출하는 배치를 호출하면 ... – phdstudent

답변

2

스크립트는 일반적으로 스크립트의 실행 위치를 신경 쓰지 않아야합니다. 그래서 당신은 전혀 cd 문을 필요가 없습니다

system('"C:\Program Files\R\R-3.1.3\bin\x64\R.exe" CMD BATCH "C:\Users\name\Desktop\Code.R"') 

는 R 경로가 항상 동일하지 않을 수 있음을주의 생각해야합니다 ...이 프로그램 R의 위치를 ​​찾으려면 아마도 안전합니다. Windows의 Matlab에서이를 수행하는 방법은 있지만 모르겠습니다.

또한 실제로는 R CMD BATCH이 존재하는 이유를 알지 못하지만 대신 RScript을 사용하는 것이 좋습니다. It works much nicer for a number of reasons.

system('"C:\Program Files\R\R-3.1.3\bin\x64\Rscript.exe" "C:\Users\name\Desktop\Code.R"') 
+0

그게 전부 야. 고맙습니다! – phdstudent

-3

system 대신 dos 명령을 사용해보십시오.

+1

Windows 플랫폼에서'dos'와'system' 사이에는 차이점이 없습니다. – excaza

관련 문제