如果有错误,请停止代码执行

时间:2016-02-21 07:14:29

标签: r error-handling try-catch

我有代码,我一个接一个地采购多个代码。像下面的东西

source("t1.r")
source("t2.r")
source("t3.r")
source("t4.r")

在运行此主脚本时,如果任何源语句出错,我不想提供任何剩余的脚本(即不想运行任何后续语句)。

我不想在每个源语句之后写错误条件。我想做一些普遍的事情,而且只是在开始时。

我应该在主脚本中做些什么改变呢?

1 个答案:

答案 0 :(得分:1)

根据 Nicola和RHertel

的建议编辑
setwd("/Users/xxxx/Desktop/Sub")
scripts<-list.files(pattern="*.R")         

for (f in scripts)
{
  c<-try(source(f))                        
  ifelse (class(c)!="try-error", print(paste("Script Sourced:", f,sep=" ")), setwd("/Users/xxxx/Desktop")             
}

此脚本打印源代码的脚本。这样你就可以识别出哪些来源不合适。