ホームページ  >  記事  >  バックエンド開発  >  Python で指定された数値分布を持つ乱数を生成するには?

Python で指定された数値分布を持つ乱数を生成するには?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-11 04:43:02540ブラウズ

How to Generate Random Numbers with a Specified Numerical Distribution in Python?

指定された数値分布で乱数を生成する

特定の分布に従う乱数を生成するタスクに直面したとき、次のような機能を備えた既存のモジュールの存在について考えるかもしれません。そのようなタスクを処理することについて。結局のところ、これは多くのプログラマーによって解決策が考えられている一般的な問題です。

次の例を考えてみましょう:

1 0.1
2 0.05
3 0.05
4 0.2
5 0.4
6 0.2

ここでは、値とその値を含むファイルがあります。対応する確率。この分布に基づいて乱数を生成するには、scipy.stats.rv_discrete を利用できます。 value パラメータを通じて確率を指定することで、分布オブジェクトを作成できます。その後、配布オブジェクトの rvs() メソッドを使用して乱数を生成できます。

ただし、別の実行可能なオプションは、numpy.random.choice() を使用することです。この関数は p キーワード パラメータを受け入れ、確率を直接指定できます。

例:

numpy.random.choice(numpy.arange(1, 7), p=[0.1, 0.05, 0.05, 0.2, 0.4, 0.2])

最後に、Python 3.6 以降を使用している場合は、random.choices() から標準ライブラリは便利なソリューションを提供します。

以上がPython で指定された数値分布を持つ乱数を生成するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。