Simulation
今天学习的内容是模拟 —— Simulation,在统计和一些其他的应用中很重要,所以在这里介绍一些R语言中可以做模拟的函数。
用于模拟已知概率分布的数字和变量
有些函数可以直接生成符合某种概率分布的随机数字或变量,例如:
:指定一个均值和标准差,即可生成符合正态分布的随机数字变量
:从已知平均发生率(rate)的泊松分布中生成泊松随机变量
一共有四类基本的函数和概率分布函数相关,它们的前缀分别是, , 以及:
:用来估计密度(density)
:用来产生随机数字(random)
:估计累计分布(cumulative distribution)
:估计分位数(quantile)
每种分布都有以上这四种前缀构成的函数,比如, , , 等。
每种函数都有不同的参数,那正态分布的四个函数举例:
所有函数都需要我们给定均值和标准差,以此确定实际的概率分布,如果不指定,那么默认属于标准正态分布(均值为0,标准差为1)
生成最简单的服从标准正态分布的随机数:
修改参数:
设置随机数字生成种子
函数可以用来设置随机数字生成种子(seed)。
这种方法可产生相同的随机数,也叫“伪随机数”。它怎么用?
举例
我们可以设置种子为任意整数,然后生成随机数字如下:
我们看到种子设定值不同时随机数字也不同,但是再设定相同种子就会出现完全一样的随机数字:
这个操作能让你重复得到之前生成的随机数字,可以让我们的模拟过程可重复,所以在生成随机数字之前最好设定一个种子。
再拿泊松分布举例:
生成不同发生率的10个随机变量:
估计泊松分布的累积分布函数:
参考资料:
视频课程 R Programming by Johns Hopkins University:https://www.coursera.org/learn/r-programming/home/welcome
讲义 Programming for Data Science :https://bookdown.org/rdpeng/rprogdatascience/R
领取专属 10元无门槛券
私享最新 技术干货