我有一個複雜的,我用來做模擬的長函數。它可能會產生錯誤,主要是隨機向量與零方差結果相等的值,從而導致PCA或邏輯迴歸。tryCatch具有複雜的功能和plyr在R
我正在羣集上使用doMC
和plyr
執行它。我不希望tryCatch
函數中的每一件小事情,因爲錯誤的可能性很多,並且它們中的每一個的概率都很小。
我該如何嘗試抓住每一次運行,而不是tryCatch
ing每一個小行?該代碼是這樣的:
iteration = function(){
a really long simulation function where errors can happen
}
reps = 10000
results = llply(1:reps, function(idx){out<-iteration()},.parallel=TRUE)
編輯約一年後: 的foreach
封裝使該大致比它更容易與plyr
library(foreach)
output <- foreach(i=1:reps, .errorhandling = 'remove')%dopar%{
function
}