R语言 错误处理
错误处理是一个过程,在这个过程中我们要处理不需要的或异常的错误,这些错误可能会在程序执行过程中导致异常的终止。在R编程中,我们基本上有两种方法可以实现错误处理机制。我们可以直接调用stop()或warning()等函数,也可以使用 “warning “或 “warning.expression “等错误选项。在代码中可以用于错误处理的基本函数。
- stop(…) : 它停止了对当前语句的评估,并产生了一个消息参数。控制权被返回到顶层。
- waiting(…) : 它的评估取决于错误选项 warn的值。如果警告的值是负的,那么它被忽略。如果值为0(零),它们将被存储并在顶层函数完成其执行后打印出来。如果值是1(1),那么一旦遇到它就会被打印出来,而如果值是2(2),那么产生的警告就会立即转化为错误。
- tryCatch(…) : 它有助于评估代码和分配异常。
R语言 条件处理
一般来说,如果我们在执行程序时遇到任何意外的错误,我们需要一种有效的、交互式的方法来调试错误,并了解出错的原因。然而,有些错误是预料之中的,但有时模型无法拟合并抛出一个错误。在R语言中基本上有三种方法来处理这种情况和错误。
- try() :它帮助我们继续执行程序,即使发生错误。
- tryCatch() :它有助于处理条件并控制基于条件发生的事情。
- withCallingHandlers() :它是tryCatch()的一个替代方法,负责处理本地处理程序。
R语言 try-catch-finally
与其他编程语言如Java、C++等不同,R中的try-catch-finally语句是作为一个函数使用的。在tryCatch()中主要处理的两个条件是 “错误 “和 “警告”。
语法
例子
输出
R语言 withCallingHandlers()
在R语言中, withCallingHandlers() 是 tryCatch() 的一个变种 。 唯一的区别是tryCatch()处理的是退出的处理程序,而withCallingHandlers()处理的是本地处理程序。
例子
输出