R语言自定义函数

2019-07-31 15:34:50 浏览数 (1)

R语言在使用过程中有些时候代码过长或者很多重复性的功能需要对代码的结构进行管理以及梳理。R语言具有自定义函数的功能,如果有些代码实现的功能具有重复性,那么就可以利用R语言自带的自定义函数体进行封装功能。最后,只需要每次调用的时候保证输入输出能够结构化的输入变量和结构化的输出计算结果。

一、我们来看下R语言中自定义函数的构造:

格式:myfuntion<-function(arg1,arg2,…){

statements

return(object)

}

函数名称为myfunction;

arg1,arg2 为参数;

statements 为函数语句;

return(object)返回结果。

二、我们定义好的函数,我们也可以通过以下函数去检查函数的结构以及参数设置(注:R语言自带函数是无法通过以下函数查看的):

1) 函数体:body(),查看函数的内部代码,

2) 形式参数列表:formals(),查看函数调用的参数列表

3) 环境:environment(),函数的变量所在位置的“地图”

4)检测参数设置:force(),主要是在参数缺失或者函数未传入参数时使得函数进行报错,从而提醒调用者。

5) 退出时执行:on.exit(),可以在一个函数主体部分中的任何地方插入一个 on.exit 的调用。on.exit 调用的作用是保存函数主体的值使得函数跳出后它仍然可以被执行。它允许函数改变一些系统参数和保证在函数结束时它们设有恰当的值。on.exit 保证函数在直接退出或警告退出的情况下一定运行。如果你在一个函数中调用多个on.exit()函数,那么请务必设置add = TRUE。

6) 返回不可见的值: invisible(x),获取当前变量的值。

7) 函数错误信息设置:stop()和stopifnot(),在判断后调用可以输出自己的错误消息。

欢迎大家交流学习

0 人点赞