1
我試圖從使用$group = rand(0,8)
在php中的統一分佈生成一個隨機數。我跑了200次左右的實驗,並得到以下分佈,這表明所有組沒有被選中的概率相等。如何從一個統一的分佈在PHP中生成一個隨機數?
Group | Freq. Percent Cum.
------+------------------------------
0 | 20 9.52 9.52
1 | 4 1.90 11.43
2 | 25 11.90 23.33
3 | 32 15.24 38.57
4 | 27 12.86 51.43
5 | 22 10.48 61.90
6 | 30 14.29 76.19
7 | 24 11.43 87.62
8 | 26 12.38 100.00
------+-------------------------------
Total | 210 100.00
我在這裏讀話題PHP: rand() or array_rand trouble,我問這個問題的唯一原因是因爲我是新來的PHP,不知道我是否應該使用:
- random_int()http://php.net/manual/en/function.random-int.php
- stats_rand_gen_iuniform()http://php.net/manual/en/function.stats-rand-gen-iuniform.php
- 或其他什麼?
中的任何隨機整數函數都會提供一個統一的分佈,*或許*除了'stats_rand_gen_iuniform()',但這些函數高度未記錄並且需要您安裝pear stats包。然而,你可以創建自己的函數,檢查array_count_values()與sizeof()數組的出現次數,以確定隨機整數是否值得重傳。 – Xorifelse