如何在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.tw/what-is-the-use-of-tilde-operator-in-r
廣告