R语言中连续数字 r语言循环产生随机数 | 您所在的位置:网站首页 › 基本随机变量分布和抽样分布 › R语言中连续数字 r语言循环产生随机数 |
本文旨在介绍如何生成满足特定分布的随机数,并给出了每类方法的大致原理和实例 方法一,使用R语言概率函数比较常见的发布如正态分布,t、F分布、二项分布等R都提供了直接的概率函数,下表展示了R中可用的单变量概率函数。 其中在分布名前加p累积分布函数(cdf),加d代表概率密度函数,加q表示分位数函数,加r表示抽样函数。 例如正态分布,相应操作如下 rnorm(100,0,1) #抽取100个服从N(0,1)的随机数 pnorm(0,0,1) #输出0.5 qnorm(0.5,0,1) # 输出0 dnorm(0,0,1) # 输出0.3989423方法二,逆变化法对于某些比较特殊的分布,R中可能没有提供现成的概率函数,例如双参数指数函数。此时可使用逆变换法生成符合该分布的随机数。逆变换法的基本原理是:对于连续性随机变量X,其分布函数F(x)也是一个随机变量,服从参数为0,1的均匀分布U(0,1),则依据概率论知识,若u~U(0,1),则F-1(u) ~F(x),F-1表示F的反函数。所以,逆变换法概括如下: 1.生成随机变量u~U(0,1)2、计算F-1(u)3、令x = F-1(u) ,得到服从目标分布的随机数实例演示用逆变换法生成1000个服从参数为1的指数分布随机数,并于R语言内置函数比较。 n |
CopyRight 2018-2019 实验室设备网 版权所有 |