在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
本节书摘来自华章出版社《数据科学:R语言实现》一 书中的第1章,第1.10节,作者:R for Data Science Cookbook 丘祐玮(David Chiu),更多章节内容可以访问云栖社区“华章计算机”公众号查看。 1.10 处理函数中的错误如果你对现代编程语言比较熟悉,你应该已经在开发过程中,使用try、catch以及block函数解决过可能的错误。R语言在函数中也提供了类似的错误处理方案。因此,你可以在R代码中添加错误处理机制来使程序变得更加健壮。在本教程中,我们会介绍R中基本的错误处理函数。
运行原理 在这个函数中,我们使用不同的代码块来捕捉warning和error消息。依照函数的形式,我们创建了名为dividenum的函数。这个函数首先执行数值除法;不管产生何种错误,我们都可以使用函数error来捕捉错误并打印错误消息。在代码块的底部,我们移除了所有函数中定义的数值,并打印出消息clean variable。此处,我们可以测试一下,在3种不同情况下,函数是如何工作的:执行正常除法,从字符串中分离子字符串,以及只给函数传递一个参数。 现在我们可以看到3种不同条件下的消息输出。在第1种情况下,函数会打印出除法结果,并跟着clean variable。因为clean variable是代码块finally实现的。在第2种情况下,函数首先在代码块error中捕捉了缺失值错误,并在底部输出clean variable。在最后一个情况下,我们并没有捕捉未给参数b传递a值的错误,但是函数依然首先返回了一条错误消息,然后在控制台上打印clean variable。 在这个例子中,如果你给函数dividenum传递两个合法的数值参数,函数会返回3/5作为输出。另外,如果你给函数传递一个非数值输入,函数会使用函数conditionMessage来捕捉错误,并输出错误。 |
请发表评论