NumPy numpy.random.rand() 関数

Suraj Joshi 2023年1月30日
  1. numpy.random.rand() の構文
  2. コード例:numpy.random.rand() メソッド
  3. コード例:出力配列の形状を指定する numpy.random.rand() メソッド
NumPy numpy.random.rand() 関数

Python Numpy numpy.random.rand() 関数は指定された形状の配列をランダムな値で生成します。

numpy.random.rand() の構文

numpy.random.rand(d0, d1, ..., dn)

パラメータ

d0, d1, ... , dn 整数です。ランダム関数からの出力配列の次元を表します。値が指定されていない場合はスカラ値が返されます。

戻り値

指定された形状のランダムな値を持つランダムな配列を返します。

コード例:numpy.random.rand() メソッド

import numpy as np

x = np.random.rand()
print(x)

出力:

0.6222151413197674

出力配列にはサイズが指定されていないので、乱数を生成します。

生成される乱数の範囲は 0 から 1 の間です。

同じコードを複数回実行すると、異なる乱数が得られるかもしれません。

一定の出力を生成するために、np.random() 関数の seed を固定します。

import numpy as np

np.random.seed(0)

x = np.random.rand()
print(x)

出力:

0.5488135039273248

関数を実行するたびに一定の出力を生成します。

コード例:出力配列の形状を指定する numpy.random.rand() メソッド

固定のサイズと形状の配列を生成するには、numpy.random.rand() 関数に出力配列の形状を決定するパラメータを指定します。

numpy.random.rand() メソッドで 1 次元配列を生成する

import numpy as np

np.random.seed(0)

x = np.random.rand(5)
print(x)

出力:

[0.5488135  0.71518937 0.60276338 0.54488318 0.4236548 ]

乱数からなる長さ 5 のランダムな 1 次元配列を生成します。

ここに含まれる数値は (0,1) の範囲内にあります。

seed が固定されているため、実行するたびに同じ乱数が生成されます。

1 よりも大きな数を生成する必要がある場合は、単に配列に必要な範囲を乗算すればよい。

import numpy as np

np.random.seed(0)

x = np.random.rand(5)*10
print(x)

出力:

[5.48813504 7.15189366 6.02763376 5.44883183 4.23654799]

1 から 10 までの乱数を生成します。

numpy.random.rand() メソッドで 2 次元配列を生成する

import numpy as np

np.random.seed(0)

x = np.random.rand(2,3)
print("Array x:")
print(x)

print("\n Shape of Array x:")
print(x.shape)

出力:

Array x:
[[0.5488135  0.71518937 0.60276338]
 [0.54488318 0.4236548  0.64589411]]

 Shape of Array x:
(2, 3)

これは numpy.random.rand() メソッドを用いて 2 行 3 列の 2 次元ランダム配列を生成します。

numpy.random.rand() メソッドを用いて高次元配列を生成する

import numpy as np

np.random.seed(0)

x = np.random.rand(2,3,2,3)
print("Array x:")
print(x)

print("\n Shape of Array x:")
print(x.shape)

出力:

Array x:
[[[[0.5488135  0.71518937 0.60276338]
   [0.54488318 0.4236548  0.64589411]]

  [[0.43758721 0.891773   0.96366276]
   [0.38344152 0.79172504 0.52889492]]

  [[0.56804456 0.92559664 0.07103606]
   [0.0871293  0.0202184  0.83261985]]]


 [[[0.77815675 0.87001215 0.97861834]
   [0.79915856 0.46147936 0.78052918]]

  [[0.11827443 0.63992102 0.14335329]
   [0.94466892 0.52184832 0.41466194]]

  [[0.26455561 0.77423369 0.45615033]
   [0.56843395 0.0187898  0.6176355 ]]]]

 Shape of Array x:
(2, 3, 2, 3)

これは、numpy.random.rand() メソッドを用いて、形状 (2, 3, 2, 3) の 4 次元ランダム配列を生成します。

同様に、numpy.random.rand() メソッドを用いて、任意の大きさのランダム配列を生成することもできます。

著者: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn