2017-11-24 9 views
1

처음으로 프로젝트에 packrat 패키지를 사용하고 있으며 Makefile을 사용하여 다른 대상에 대해 특정 순서로 특정 스크립트를 실행하고 싶습니다. 하나. 하지 않은, main_dir/subproject1/R_scripts_1/Makefile 팩트 패키지가있는 Makefile

나는 메이크 내에서 R CMD BATCH someRfile.R를 실행

  • main_dir/packrat/
  • 는, R은 자료가 많 libs와 사용하지 않는,하지만 기본 사용자 libs와 : 내이 같은 파일을 조직 내가 원하는거야. packrat 디렉토리의 하위 디렉토리에서 모든 R 프로세스 시작을 강제 실행하는 방법이 있습니까? packrat 디렉토리 만 사용 하시겠습니까?!

    감사합니다.

답변

1

프로젝트 폴더의 .Rprofile 파일과 마찬가지로 someRfile.R의 맨 뒤에 source("packrat/init.R")을 넣어야합니다.

위의 코멘트에서 R studio를 사용한다고 가정합니다.

+0

docs이 답장을 보내 감사합니다 자료가 많에서 다음을 포함하는 각 하위 디렉토리 (및 하위 디렉토리 등)

source("../.Rprofile", chdir = TRUE) 

.Rprofile을 추가,하지만 나를 위해 작동하지 않습니다. 나는 packrat이 기본 libs를 어떻게 변경하는지 알아 내려고 노력했다. init.R에서 발생하지 않는 것 같다. – Manuel

+0

당신의 요지를 봅니다. 그렇다면 최선의 선택은'someRfile.R'의 시작 부분에서'.libPaths' 함수를 사용하여 라이브러리 경로를'packrat' 디렉토리의 하위 디렉토리로 설정하는 것입니다. –

+0

안녕하세요. 나는'.libPaths()'로이 작업을 수행 할 수 있다는 것을 알고 있지만, 파일을 많이 가지고 있기 때문에 더 부드러운 방법이 될 것이라고 생각했다. (각 폴더마다 .Renviron을 만들 수있다.) 많은 하위 프로젝트 폴더. :-( – Manuel

0

이 문제는 다음과 같이 수정되었습니다.