使用特定分佈產生隨機數
您擁有一個包含不同值的機率的檔案:
1 0.1 2 0.05 3 0.05 4 0.2 5 0.4 6 0.2
您的目標是根據此分佈產生隨機數。您尋求一個能夠處理此任務的現有模組,並認識到這是一個普遍存在的問題,可能已經促使開發專門的功能或模組。
解
Python 生態系統提供了多種選項來產生具有特定值的隨機數。 distribution:
scipy.stats.rv_discrete:
numpy.random.choice() 帶有p 參數:
範例:
numpy.random.choice(numpy.arange(1, 7), p=[0.1, 0.05, 0.05, 0.2, 0.4, 0.2])
random.choices() (Python 3.6 ):random.choices() (Python 3.6 ):
>範例:
import random random.choices(population=list(range(1, 7)), weights=[0.1, 0.05, 0.05, 0.2, 0.4, 0.2])
這些模組提供了高效且簡單的方法來產生隨機數給定的分佈,無需實作自訂演算法。
以上是如何在 Python 中使用自訂分佈來產生隨機數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!