【Python 乱数】乱数とは?一様乱数とは?Python でいろいろな「一様乱数」を生成させたいあなたはこちらをどうぞ【乱数とは 一様乱数とは】

python 乱数 一様乱数 numpy uniform random randint Python

統計学を学んでいて、

プログラミングをしていると、

必ず出会うのが「乱数」です。

乱数は、統計学だけでなく、機械学習や人工知能などでも避けることができない技術です。

その他、統計学を基礎とするあらゆる応用に乱数が関係してきます。

乱数のシンプルな例は、サイコロです。

プログラムの中でサイコロを振りたい場合には、乱数の知識が必要です。

サイコロを振るというのは、シンプルですが、

確率的な現象をモデル化するときの基礎でとても重要です。

例えば、現実世界をモデル化するときには、誤差の影響を考慮する必要があることがあります。

誤差は毎回決まった値が出るわけでなく、不規則な値として出てくることが多いです。

誤差を考慮してモデルを作成する場合など、

  • 乱数をうまく扱う

といった技術は必須になります。

 

 

というわけで、本記事では、

  • Python を使って乱数を生成させる方法

をまとめたいと思います。

特に初学者向けとして、「一様乱数」という乱数についてまとめたいと思います。

 

 

【Python 乱数】乱数とは?一様乱数とは?Python で「一様乱数」を生成させたいあなたはこちらをどうぞ【乱数とは 一様乱数とは】

乱数とは?

乱数」というのは、

  • 数字が不規則に現れる数の配列

のことです。

数字は不規則に生成されるので、次に出る数は予測できないことになります。

一様乱数とは?

一様乱数」の「一様」というのは、

  • 出てくる数値は全部同じ確率

という意味です。

なので、一様乱数はで

  • 数値は不規則に出てくる
  • それぞれの数値が出てくる確率は同じ

ものになります。

 

一様乱数の具体例は?

具体的には、1−6の範囲の整数を、一様乱数として発生させるとすると、

1、2、3、4、5、6

の数字が不規則に、同じ確率で出てきます。

実際に発生させてみると、

5、2、4、3、6、1、・・・

のような感じです。

これは「サイコロ」のことですよね。

サイコロは一様乱数の発生装置なわけです。

 

Python で一様乱数を生成してみる

 

 

ここではPyhotn のライブラリの1つの NumPy を使って、一様乱数を生成してみます。

Python numpy 一様乱数 1

(1行目) numpyをインポートして、npと略して使うようにしています。

(3行目) numpy の中の、random というモジュールを使っています。

この使い方では、1−5までの整数の一様乱数を生成します。

つまり、randint(a, b)として使うと、

(a, b-1)の範囲の整数を乱数として生成することができます。

b の値は生成されないことに注意してください。

np.random.randomint( )1回使うと1個の乱数が生成されます。

 

複数の一様乱数(乱数列)を生成させてみます。

Python numpy randint 一様乱数 3

for を使って、繰り返して一様整数乱数を1−6の範囲で生成させています(カッコの中は1−7になっています)

この乱数生成プログラムはサイコロと同じです。

プログラムを実行すると以下のようになります。

Python numpy randint for一様乱数 2

10個生成させてみると、

1、3、4、5、6

が出ています。

  • あれ、今回2は出ていないよ?
  • 一様(等確率で生成してる)なら2も出るんじゃないの?

と思われるかもしれません。

結論から言うと、

 

この先は会員限定になります。

会員の方はログインをお願いいたします。

登録がまだの方は、会員登録をお願いします。

>>> 会員登録はこちら

 

 

↓こちら無料で読めます

 

You need to be logged in to view the rest of the content. お願い . あなたは会員ですか ? 会員について
error: Content is protected !!
タイトルとURLをコピーしました