2009-09-08 7 views
20

Windows에서 여러 대의 컴퓨터에서 R을 사용합니다.R이 작업 디렉토리를 작업 디렉토리로 인식하게하는 방법은 무엇입니까?

난 당신이

setwd("C:/Documents and Settings/username/My Documents/x/y/z") 

처럼에 R 스크립트 내에서 작업 디렉토리를 설정할 수 있습니다 알고 ...하지만 다음이 스크립트의 휴대 성을 나누기. Windows가 백 슬래시를 제공하므로 모든 슬래시를 뒤집어 야합니다.

특정 작업 디렉토리에서 R을 시작하여 스크립트 수준에서이 작업을 수행 할 필요가없는 방법이 있습니까?

답변

14

R (R.lnk 파일)의 바로 가기를 원하는 폴더에 복사해야합니다. 그런 다음 "등록 정보"(마우스 오른쪽 버튼 -> 마지막 옵션)에서 두 번째 탭 ("바로 가기"?)에서 "시작 ..."필드의 내용을 모두 삭제하십시오. 이 바로 가기 작업 디렉토리로 R을 시작하면 바로 가기가있는 디렉토리가됩니다.

영어 버전의 Windows가 없으므로 필드 이름을 알 수는 없지만 쉽게 찾을 수 있어야합니다.

비슷한 질문은 R-창 - 자주 묻는 질문이었다 : 2.14에서

2.5 How do I run it?

2.10 How can I keep workspaces for different projects in different directories?

2.14 What are HOME and working directories?

작업 디렉토리는 디렉토리라고 언급 Rgui 또는 바로 가기 속성의`시작 (Start in) '필드에 의해 주어진 바로 가기가 사용되지 않는 한 Rterm이 시작되었습니다.

3

Emacs/ESS를 사용하는 경우 문제가되지 않습니다. R 스크립트가 위치한 디렉토리로 이동 한 다음 R ESS 프로세스를 시작합니다. R 콘솔은 현재 디렉토리를 R 작업 디렉토리로 표시합니다.

Emacs/ESS로 변환하지 않았다면 권장합니다. (불꽃 전쟁을 막기 위해 Vi 사용자에게도 비슷한 옵션이 있음을 알았습니다.)

희망이 있습니다.

6

환경 변수를 사용할 수 있습니다. 이는 Sys.getenv()Sys.setenv()에서 작동합니다. 예를 들면 : 당신이 당신의 스크립트의 변수를 보낸 경우

> Sys.setenv(R_TEST="testit") 
> Sys.getenv("R_TEST") 
    R_TEST 
"testit" 

, 당신은 내에서 액세스하고 해당 출력에 setwd()를 호출 할 수 있어야합니다.

+0

이 방법을 설정 환경 변수 R 세션에 걸쳐 유지합니까? 전체 컴퓨터를 다시 시작하는 방법은 어떻습니까? – eykanal

+0

아니요.이 파일을 .Rprofile 파일에 추가하면됩니다. 또는 OS에서 시스템 변수를 가져올 수 있습니다 (예 : Windows에서는 환경 변수에 값을 저장할 수 있음). – Shane

5

작업 영역을 원하는 디렉토리에 저장 한 후 Windows 탐색기에서 작업 영역을 열면됩니다.

3

그냥 자세히 말하면 슬래시를 뒤집는 대신 다른 백 슬래시를 추가하십시오. 이들 중 두 개는 \ /와 같은 방식으로 작동합니다. 그것은 적어도 조금 더 쉬워집니다.

+0

+1 Ehva : 평범한 옛 R 작업을하고 작업 디렉토리를 한 번만 설정하려는 경우 가장 쉬운 방법입니다. – PavoDive

4

내 스크립트 앞에 다음 줄을 넣으면 내 컴퓨터에서 작업 할 수 있습니다.

setwd(path.expand("~/path/to/working/directory/")) 

여기서 ~는 홈 디렉토리입니다.

Sys.setenv(HOME = "path") 또는 Sys.setenv(R_USER = "path") 모두 홈 디렉토리를 설정할 수 있습니다.

내 경우에는 여러 개의 창 상자에서 작업하지만 각각은 상당히 다른 디렉토리 구조를 가지고 있지만 홈 디렉토리를 올바르게 설정하면 컴퓨터간에 코드를 동기화하고 R 프로젝트를 실행 한 이후로 각각 올바르게 실행할 수 있습니다 비슷한 디렉토리 구조를 가지고있다.

-1

원하는 디렉토리에 R gui의 바로 가기를 입력하십시오. 마우스 오른쪽 버튼을 클릭하고 바로 가기 속성을 봅니다. "시작 위치"항목을 삭제하고 확인을 클릭하십시오. 이 바로 가기에서 R gui를 실행하면 기본 디렉토리는 실행 한 폴더가됩니다. 원하는 곳에이 바로 가기를 복사/붙여 넣기하십시오.

우분투를 들어
+0

귀하의 답변과 제 답변의 차이점은 무엇입니까? – Marek

1

:

setwd(Sys.getenv("PWD")) 

이제 기본 작업 디렉토리가 될 것입니다 당신이에서 R을 출시 어떤 디렉토리 :
.Rprofile 파일 (일반적으로 홈 디렉토리)에 다음 명령을 삽입합니다. R (시작 소스 .Rprofile 시작하기 전)을 cwd에서 .Rdata으로 검색하기 전에 작업 공간 이미지를 .RData으로 저장하여 다른 디렉토리에 기본 작업 공간을 설정할 수도 있습니다.

path <- getwd() setwd(path)

또는

:
0

나는 항상이 같은 명령 getwd()setwd()의 조합을 사용, 내가 일하고 있어요 R 스크립트의 현재 디렉토리와 같은 R 작업 디렉토리를 설정하려면 당신이 그것에 대해 자세한 내용을 원하는 경우

setwd(getwd())

article를 참조하십시오.

건배,

[]의

관련 문제