【上一篇:70.关于pipe】
【下一篇:72.关于写自定义函数的练习题】
Writing good functions is a lifetime journey.
自定义函数的格式如下:
function_name <- function(arg1,arg2,arg3, ...){
statements
return(object)
}
function_name命名建议
1) 有意义,可以看出函数的功能,可以用动词,比如说calculate_mean等,也可以用名词。
2) 函数名字的书写可以用驼峰命名法:一般变量名用“小驼峰”,即第一个单词都小写,其他单词的首字母大写,例如myNewName;类名,例如函数名,属性,命名空间用“大驼峰”,即所有单词的首字母都大写,例如DataUserList。也可以将所有单词都小写,单词之间用下划线连接,例如:my_class_name。
3)避免与已知函数名字相同
4)命名方式保持一致就好,没有好坏。规范命名方式只是为了易理解、易交流。
5)同一个家族的函数适用相同的前缀(不是后缀)。
arguments的命名建议
1)如果参数代表向量,可以用类似x,y,z的字符
2)如果是代表权重的向量,则用w字符
3)i,j表示数字索引,尤其是表示行列的时候
4)n表示长度或行数,p表示列数
一个特殊参数是...,读作dot-dot-dot,表示任意数量的输入。
Body区要做注意的问题
1)写的代码多了,时间一长容易忘记函数对输入的具体要求,所以可以在body区加上一些调试命令行,例如利用stop函数当输入不满足要求时就停止。
2)用#对函数或命令行进行注释的时候,尽量写"why"而不是"what"和"how"。写why便于别人理解你的代码为什么这样写,也便于你自己找到更好的写法之后替代它。
3)函数必有返回值,函数返回的值通常是它计算的最后一条语句,但是可以通过使用return()选择提前返回。
多读几遍书中的第19章,慢慢就理解、记住学会了。
网友评论