2017-11-01 14 views
0

클러스터의 R에서 시뮬레이션을 실행 중입니다. 각 R 파일에는 100 개의 모델이 포함되어 있습니다. 각 모델은 다른 데이터 세트를 분석합니다. 클러스터 명령은 아래에 표시된 slurm 파일에 포함되어 있습니다.slurm을 사용할 때 R 코드 디버깅

작은 비율의 모델은 헤 시안을 추정하기에 충분히 수렴하지 않으며 이러한 모델에 대해 오류가 생성됩니다. 오류는 오류 로그 파일에 있습니다. 그러나, 나는 매개 변수 견적, 오류 로그 파일 및 100 개의 모델 중 오류를 생성하는 출력 로그 파일을 검토하여 확인할 수 없습니다. 여기

Error in chol.default(fit$hessian) : 
    the leading minor of order 3 is not positive definite 
Calls: chol2inv -> chol -> chol.default 

매개 변수 추정 이러한 오류에도 불구하고 반환되는 오류 메시지의 예입니다. 일부 SE는 거대하지만 오류 메시지가 반환되지 않는 경우에도 SE가 크게 나타날 수 있다고 생각합니다.

아래의 slurm 파일에 추가 행을 포함시킬 수 있습니까? 예를 들어 원래 위치에 표시된 오류가있는 오류와 나머지 출력을 모두 포함하는 로그 파일을 생성 할 수 있습니까 (예 : 내 Windows 노트북에 표시됩니다). 그렇게하면 로그 파일을보고 어떤 모델이 오류를 생성하는지 빠르게 판단 할 수 있습니다. 나는 해결 방법을 생각하려고 노력해 왔지만 지금까지 아무 것도 생각 해낼 수 없었다. 여기

slurm 파일입니다

#!/bin/bash 
#SBATCH -J JS_N200_301_400_Oct31_17c.R 
#SBATCH -n 1 
#SBATCH -c 1 
#SBATCH -N 1 
#SBATCH -t 2000 
#SBATCH -p community.q 
#SBATCH -o JS_N200_301_400_Oct31_17c.out 
#SBATCH -e JS_N200_301_400_Oct31_17c.err 
#SBATCH --mail-user [email protected] 
#SBATCH --mail-type ALL 
Rscript JS_N200_301_400_Oct31_17c.R 

답변

1

이 당신이 원하는,하지만 R 옵션 error가 (당신이 그렇지 않으면 잡을하지 않는 것이) 오류가 발생해야하는 제어 할 수 있습니다 경우 확실하지. 예를 들어, .Rprofile 시작 스크립트에서, 의지의 (a) 출력은 또한거야, 더 중요한 것은이 오류이지만, 경우 역 추적 (나 당신 *의 .R 스크립트의 시작 부분에

options(error = function() { 
    traceback(2L) 
    dump.frames(dumpto = "last.dump", to.file = TRUE) 
}) 

을 설정하거나, get(load(하지 실수라고,

dump <- get(load("last.dump.rda")) 

주 :) 당신이로 신선한 R 세션에서로드 할 수있는, last.dump.rda을 파일로 호출 스택을 덤프. 여기 dump은 호출 스택과 그 내용을 검사 할 수있는 클래스 dump.frames의 객체입니다.

물론 error을 사용자 정의하여 다른 작업을 수행 할 수 있습니다.

0

클러스터 담당 IT 담당자로부터 slurm 파일의 오류 로그에 대한 참조를 제거하여 출력 로그에 오류 메시지를 추가 할 수 있음을 알았습니다. 아래를 참조하십시오. 그것은 충분히 좋은 것 같습니다.

더 명확하게하기 위해 각 모델의 출력 시작과 끝 부분에 모델 번호를 로그에 출력 할 계획입니다 (처음부터 했어야합니다).

#!/bin/bash 
#SBATCH -J JS_N200_301_400_Oct31_17c.R 
#SBATCH -n 1 
#SBATCH -c 1 
#SBATCH -N 1 
#SBATCH -t 2000 
#SBATCH -p community.q 
#SBATCH -o JS_N200_301_400_Oct31_17c.out 
#SBATCH --mail-user [email protected] 
#SBATCH --mail-type ALL 
Rscript JS_N200_301_400_Oct31_17c.R