NumPy 随机模块

NumPy random.sample() 函数返回给定形状的随机值。该函数创建给定形状的数组,并用从 [0, 1) 上的连续均匀分布中抽取的随机样本填充该数组。

用于从 unif[a, b) 生成随机值,b>a ,可以使用以下关系:

(b-a) * np.random.sample() + a

语法

numpy.random.sample(size=None) 

    参数

    size可选。 指定输出形状。如果给定的形状是,例如,(m, n, k),则抽取 m * n * k 个样本。默认值为 None,在这种情况下返回单个值。

    返回值

    返回给定形状的随机值(除非size=None,在这种情况下返回单个浮点数)。

    示例:

    在下面的示例中,random.sample() 函数用于生成单个随机值。

    import numpy as np
    
    x = np.random.sample()
    
    #打印随机数
    print("x =", x) 
    • 1
    • 2
    • 3
    • 4
    • 5

    上述代码的输出将是:

    x = 0.22076149806948886 

      示例:

      在下面的示例中,该函数用于生成指定形状的随机值。

      import numpy as np
      
      #创建给定大小的数组
      #填充随机数
      x = np.random.sample((5, 3))
      
      #打印 x
      print(x) 
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7

      上述代码的输出将是:

      [[0.83427982 0.14928282 0.63731192]
       [0.65008078 0.18633094 0.18742767]
       [0.61075212 0.01129346 0.11458491]
       [0.99085745 0.28475412 0.19810717]
       [0.51604249 0.42201909 0.09791535]] 
      • 1
      • 2
      • 3
      • 4

      示例:

      通过使用(b-a) * np.random.sample() + a关系,我们可以定义均匀分布来从中抽取样本。

      import numpy as np
      
      #创建一个给定大小的数组,填充
      #从 [10, 20) 中抽取的随机数
      x = (20-10) * np.random.sample((5, 3)) + 10
      
      #打印 x
      print(x) 
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7

      上述代码的输出将是:

      [[14.5350012  11.50377783 13.98438303]
       [14.23121651 18.92345323 13.35319144]
       [18.98417555 18.79124236 18.35668005]
       [12.79211314 11.84763782 16.63781161]
       [11.86143982 19.85435164 13.33015107]] 
      • 1
      • 2
      • 3
      • 4