统计计算系列文章目录
第一话 统计计算之随机变量生成方法
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
统计计算之随机变量生成方法
(本篇博客是自己根据导师的统计计算课程的课件自行整理可得,如有错误,请联系我,此笔记仅用于学习,如需转载,请注明来源,谢谢!)
1 引言
计算统计的基本工具就是要从指定的概率分布中生成随机变量,最基本最重要的是均匀分布的伪随机数生成器,其他概率分布的随机数生成方法大都依赖于均匀分布随机数生成器。
在R语言中,均匀分布的随机数的生成为:
runif(n) #generate a vector of size n in [0,1]
runif(n,a,b) #generate n Uniform(a, b) numbers
matrix(runif(n*m),n,m) #generate n by m matrix
另外,一个抽样函数sample()用于从一个有限总体中有放回或者无放回地抽样。
sample(0:1, size = 10, replace = TRUE) # replace = TRUE 表示有放回抽样
sample(1:100, size = 6, replace = FALSE) # replace = FALSE 表示有放回抽样
x=sample(1:3,size=100,replace=TRUE,prob=c(.2,.3,.5)) #sample from a multinomial dist.
2 随机数生成方法-逆变换方法(Inverse Transform Method)
逆变换方法主要使用以下定理:
- 定理1:如果X是一个连续的随机变量,其CDF(累积分布函数)为 F X ( x ) F_{X}(x) FX(x),则 U = F X ( X ) ∼ U ( 0 , 1 ) U = F_{X}(X) \sim U(0,1) U=FX(X)∼U(0,1)。
关于定理1的证明,在此不再详细赘述,有兴趣可参见相关统计计算书籍。
根据定理1,得到一般连续型随机变量 X X X的生成步骤:
- step1: 推导逆函数 F X − 1 ( u ) F_{X}^{-1}(u) FX−1(u);
- step2: 生成一个来自均匀分布 U ( 0 , 1 ) U(0,1) U(0,1)的随机数 u u u
- step3: 通过步骤1的逆函数产生 X X X的随机数 x = F X − 1 ( u ) x=F_{X}^{-1}(u) x=FX−1(u)
这个方法是生成随机数的最基本的方法,通常很容易应用在分布函数的逆 F X − 1 F_X^{-1} FX−1很容易计算的前提下。
2.1 laplace分布随机数
标准的Laplace分布的密度函数为 f ( x ) = 1 2 e − ∣ x ∣ , x ∈ R f(x)=\frac{1}{2} e^{-|x|}, x \in \mathbb{R} f(x)=21e−∣x∣,x∈R。使用逆变换方法从这个分布中生成样本量为1000的随机样本。并使用本章演示的方法来检查和比较生成的样本和目标分布。
根据标准的Laplace分布的密度函数通过求积分可以得知其分布函数为:
L a ( x ; 0 , 1 ) = { 1 2 e x , x ≤ 0 1 − 1 2 e − x , x > 0 L a(x ; 0,1)=\left\{\begin{array}{ll} \frac{1}{2} e^{x}, & x \leq 0 \\ 1-\frac{1}{2} e^{-x}, & x>0 \end{array}\right. La(x;0,1)={ 21ex,1−21e−x,x≤0x

最低0.47元/天 解锁文章
71

被折叠的 条评论
为什么被折叠?



