私はクラスタ上R
でシミュレーションを実行していますを使用するときにRのコードをデバッグします。各R
ファイルには100個のモデルが含まれています。各モデルは異なるデータセットを分析します。クラスタコマンドは、以下に示すslurm
ファイルに含まれています。SLURM
モデルの小さな割合は明らかにヘッセ行列を推定することが十分に収束しないとエラーがこれらのモデルのために生成されます。エラーは、エラーログファイルに格納されます。しかし、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