首页 理论教育 基于R生成各种分布的伪随机数及抽样举例

基于R生成各种分布的伪随机数及抽样举例

更新时间:2025-01-19 工作计划 版权反馈
【摘要】:产生正态随机数函数rnorm(),这时默认均值等于0,标准差等于1,否则要在正态随机数函数中给出具体的均值、标准差。类似的,runif()、rexp()、rchisq()、rt()、rf()等随机数函数分别产生均匀分布、指数分布、卡方分布、t分布、F分布的随机数。

1.产生各种分布的伪随机数

R可以非常方便地产生我们所需要的各种随机数,当然这是伪随机数,并不是通过物理方法得出的随机数,但这已经可以满足我们做各种模拟试验的需要。

产生正态随机数函数rnorm(),这时默认均值等于0,标准差等于1,否则要在正态随机数函数中给出具体的均值、标准差。

类似的,runif()、rexp()、rchisq()、rt()、rf()等随机数函数分别产生均匀分布、指数分布、卡方分布、t分布、F分布的随机数。

2.筛选出满足某种条件的数据

我们仍借助table1_1中的数据加以说明。

(1)如果想知道几个月后平均来看出生男婴的体重将超过10千克,代码如下:

(2)当然也可以借助sample()函数得到同样的结果。

(3)借助sample()函数随机抽取。(www.xing528.com)

注:sample()函数在进行抽样时非常有用,基本格式为:sample(x,n,replace=FALSE,prob=NULL),默认等概率抽取。也可以利用prob向量设置每个元素被抽取到的概率。其中replace=FALSE即无重复抽样是默认的,如果进行重复抽样可以设置replace=TRUE,n是抽取样本的大小。

3.编辑函数

有时R提供的包不能满足需要,就需要自己编写函数,这在R学习与应用中非常重要。基本格式非常简洁:

function(arglist)expr

return(value)

其中,arglist为函数自变量,由一个或多个构成;expr为需要计算或分析的表达式,return(value)返回值。

实际操作中,需要给函数命名,表达式比较复杂时可以和返回值一起放在大括号内。下面以某地50个新生婴儿的体重为例,计算平均体重、中位数、极差、标准差、峰度、偏度。数据如下:

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈