如何在R中模拟离散均匀随机变量?
R语言基础包中没有像正态分布、泊松分布、指数分布等其他随机变量那样,用于模拟离散均匀随机变量的函数。但是,我们可以使用purrr包的`rdunif`函数来模拟它。
`rdunif`函数的语法如下:
> rdunif(n, b , a)
其中:
n = 要返回的随机值个数
b = 分布的最大值,由于分布是离散的,因此它需要是一个整数
a = 分布的最小值,由于分布是离散的,因此它需要是一个整数
示例
假设您想模拟10个介于21到50之间的年龄。我们可以按如下方式操作:
> library(purrr) > rdunif(10,b=50,a=21) [1] 38 33 28 36 48 32 47 27 29 24
现在假设我们想模拟10个年龄,最大年龄是100,则可以按如下所示进行:
> rdunif(10,100) [1] 2 80 50 50 82 68 45 72 81 25
我们还可以模拟负整数的离散均匀分布,如下例所示:
> rdunif(10,10,-5) [1] 3 -1 -3 3 6 5 3 5 -5 9
我们还可以创建一个离散均匀随机变量的表格。假设我们想生成20个介于-3和+3之间的随机值,则可以按如下所示进行:
> table(rdunif(20, 3, -3)) -3 -2 -1 0 1 3 2 4 4 3 3 4
https://tutorialspoint.com/what-is-the-use-of-tilde-operator-in-r
广告