第1.2章 R基础(函数、参数)

R中最重要的两个部分:对象,用来存储数据;函数,用来操作数据

1.对象

传递到函数中的数据称为函数的参数。参数可以是原始数据、R对象。甚至可以是另一函数的返回结果(由内到外执行)

> die<-1:6
> mean(die)
[1] 3.5
> mean(1:6)
[1] 3.5
> round(mean(die))
[1] 4

参数可以有多个,并用逗号隔开 

2模拟骰子

.sample函数有两个参数,x向量和size,作用:从向量x中抽取size个元素并返回

> sample(1:6,5)
[1] 1 2 6 5 3
> sample(x=1:6,size=5)
[1] 3 4 1 6 5

如果设置参数时,不写参数名称,输入参数时就要按R的的顺序输入;若写了参数名称,则可以不按顺序

> sample(size=5,x=1:6)
[1] 5 2 4 6 1

3.设置参数

当不知道如何设置其中的参数,可以通过args函数查看这个函数的所有参数名

digits为可选参数,如果不明确赋值,就会使用默认值。此处round的可选参数表示的是保留到小数点后几位

> args(round)
function (x, digits = 0) 
NULL
> round(3.1456,2)
[1] 3.15

4.可抽回放样——创建独立随机样本的简单方法

replace true的作用是将sample函数的抽样类型设定为可放回抽应

> sample(die,size=3,replace = TRUE)
[1] 2 6 6

5.编写自定义函数

5.1 模拟掷一对骰子的程序

> die<-1:6
> dice<-sample(die,size=2,replace = TRUE)
> sum(dice)

目的:编写roll()函数,每次调用roll时,R都会返回两个骰子点数的和 

5.2函数构建器

5.2.1 任何一个R函数都包括三部分:函数名、程序主体、参数集合

5.2.2 function的作用是将大括号中的所有代码构建成一个函数    function(){}

> roll<-function()
+       {die<-1:6 
+       dice<-sample(die,size=2,replace=TRUE)
+       sum(dice)}
> roll()
[1] 9
> roll
function()
      {die<-1:6 
      dice<-sample(die,size=2,replace=TRUE)
      sum(dice)}

注:R会忽略所有空格和换行符这样是为了增强可读性

 ()为函数触发器,当只输入函数名而没带上(),R只会展示这个函数存储的代码;带上()才会运行这段代码

5.2.3 运行一个函数时,R会顺序执行该函数主体中的所有代码,并返回最后一行代码的运行结果。如果最后一行代码不返回任何值,整个函数也就没有返回值

6.参数

当函数有参数名bones时,调用函数时将bones提供给该函数,即可 :roll(bones=1:4)

> roll<-function(die)
+       {
+       dice<-sample(die,size=2,replace=TRUE)
+       sum(dice)}
> roll(die=1:8)
[1] 11

也可以为函数参数bones设定一个初始默认值 。

roll<-function(die=1:6)

 7.脚本

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值