R里面的tryCatch

来源:互联网 发布:老九门 网络销售价格 编辑:程序博客网 时间:2024/05/16 09:00
我们知道无论是java和python都有错误处理机制,java是try。。。catch之类的形式,python是try。。。except的形式,这种抓错的形式是很好的,在R中也有类似的东西,那就是tryCatch函数,刚刚开始是不知道,后来把R机器学习实战那本书的代码写了一遍才知道,具体看看怎么用的把:
(1)抓取错误
tryCatch(libray(xx),error=function(e){print("出现错误")} )
结果:
[1] "出现错误"
当xx包出现错误时候就会执行error函数   ,把error的结果执行出来




(2)抓取错误和警告
tryCatch(libray(xx),warning = function(w){print("出现警告")},
               error=function(e){print("出现错误")} )


(3)finally最后都会执行,跟python和java类似
tryCatch(libray(xx),warning = function(w){print("出现警告")},
               error=function(e){print("出现错误")},
               
               
               finally={
                 print("导入ggplot2包")
                 library(ggplot2)
               }
  
  )




这个函数还是蛮试用的,自己写好的代码要放到别人机器上去执行,就会出现别人机器上缺包的情况,R软件不像sas那样是商业软件,东西都统一封装的,这个可能也是R的弊病把。。。总之这个函数用处具多,其余的留给你们想象去。。。。。。
1 0