1. 如何写一个函数
首先,实现函数不能脱离实际问题,要弄明白你想干什么,比如说我想求三个数的最大值,比如我想求单源最短路径.这个弄明白了,只能说明你已经有了方向了,其次,你还得弄明白,我把结果放在什么地方.那么这个地方,就值得你深思了,如果结果能通过返回值给返回回来,那么就可以用返回值,如果不行的话,那么我必须给函数传入参数了,而且参数类型必须是指针,或者引用.第三,这还不算完,一个函数作为一个模块,你不能给写死了,因为函数一般可以解决某一类问题的.所以为了灵活一点,一些问题的参数,你不能再函数内部定义,你可以把问题的环境作为参数给传递进来.。
2. 函数怎么写
R语言实际上是函数的集合,用户可以使用base,stats等包中的基本函数,也可以自己编写函数完成一定的功能。
但是初学者往往认为编写R函数十分困难,或者难以理解。这里对如何编写R函数进行简要的介绍。
函数是对一些程序语句的封装。换句话说,编写函数,可以减少人们对重复代码书写,从而让R脚本程序更为简洁,高效。
同时也增加了可读性。一个函数往往完成一项特定的功能。
例如,求标准差sd,求平均值,求生物多样性指数等。R数据分析,就是依靠调用各种函数来完成的。
但是编写函数也不是轻而易举就能完成的,需要首先经过大量的编程训练。特别是对R中数据的类型,逻辑判别、下标、循环等内容有一定了解之后,才好开始编写函数。
对于初学者来说,最好的方法就是研究现有的R函数。因为R程序包都是开源的,所有代码可见。
研究现有的R函数能够使编程水平迅速提高。 R函数无需首先声明变量的类型,大部分情况下不需要进行初始化。
一个完整的R函数,需要包括函数名称,函数声明,函数参数以及函数体几部分。 1. 函数名称,即要编写的函数名称,这一名称就作为将来调用R函数的依据。
2. 函数声明,包括 FALSE这样的逻辑类型变量,这就意味着,if内部,往往是对条件的判别,例如 is.na, is.matrix, is.numeric等等,或者对大小的比较,如,if(x > 0), if(x == 1), if(length(x)== 3)等等。if后面,如果是1行,则花括号可以省略,否则就必须要将所有的语句都放在花括号中。
这和循环是一致的。例子: ## if与条件判断 fun.test。
3. 怎么写一次函数的解析式
写一次函数的解析式的方法有:
1,点斜式:已知直线的斜率k,及直线上的一点(a,b),则:
直线的一次函数的解析式为:y-b=k(x-a);
2,两点式:已知直线上的两点(x1,y1),(x2,y2),则:
直线的一次函数的解析式为:(y-y1)/(y2-y1)=(X-x1)/(x2-x1);
3,截距式:已知直线在x、y轴上的截距分别为a,b,(a>0, b>0)
直线的一次函数的解析式为:有四种可能。
一般将其转化为两点式,或点斜式。
4,假设式:先假设直线的一次函数的解析式为:y=kx+b(k,b为常数,且k≠0),
再根据已知条件,求出k,b即可。