【数据分析与挖掘】R语言函数的使用技巧及随机数
R语言之函数
函数在一些语言中被称为‘方法’,在R语言中函数的使用是至关重要
函数有两种,一种是自定义函数
另一种也是本篇中介绍的重点,之后我们还会单独开设函数的章节,本篇以随机数为例介绍函数的使用
置随机数种子
随机数是计算机中经常用到的一种方法
计算机的每一步都是严格计算的,当然除了一些极端情况下会出现差错
这么说了计算机是无法真正生成一个随机数,甚至已知宇宙都是在某种规则下按部就班的前进
所以生成随机数要置一个固定的数字当作运算的基数然后通过某种运算比如取余操作来达到获取随机数的效果
我管这种操作叫做置随机数种子(来源于易语言)
在R语言中使用set.seed(值)来重置随机数种子
取随机数
使用runif函数来取随机数
使用runif函数来获取随机数,我们发现如果我们使用同一个数字重置随机数种子,那么我们每次重置后取出的随机数也都是相同的。
所以我们应当用一个伪随机的数字来置随机数种子这样对于数据的安全有一定的保障
我使用的方法是Sys.time()获取当前的系统时间,即:set.seed(Sys.time()) 来置随机数种子 此处不再示例
runif函数的参数
runif函数有三个参数分别是n,min,max
其中n是每次取几个随机数,这个参数是不能忽略的也是默认参数
min,max两个参数是可以忽略的分别代表随机数的最小值和最大值,如果忽略将获取一个0-1之间的随机数
R语言函数的参数的传值
R语言是个非常灵活的工具型语言,传递参数可以显示或隐式形参变量名传递,我们用runif函数举例。
R语言中函数参数的传递如果不写出形参的名字,默认按照定义中的顺序传递runif函数的顺序是n,min,max
如果我们给出形参的名字,则可以随意调动参数传递的顺序
如果我们一部分隐式一部分显示,则隐式的部分按顺序传递参数
有心人注意到倒数1,3行代码结果出现了换行和索引,这个无需在意,这是根据你控制台的宽度自动换行的结果
形参和实参
R语言中我还不知道有没有这个概念,我只是便于理解所以这么一说
形参即是指函数声明时给出的参数变量名,实参即是传递过去的真实数据,通常形参的改变对实参没有影响。
向下取整函数floor和向上取整函数ceiling以及round保留精度
round的两个参数第一个操作值,第二个是保留精度
我们发现round函数是根据四舍五入来保留精度的
使用?+函数名查询文档
比如:?round