numpy中的random函数总结:诸如, ....

时间:2025-02-15 08:36:57

numpy官方文档:

/devdocs/=random&check_keywords=yes&area=default

()

官方文档中给出的用法是:(d0,d1,…dn) 。其中d0,d1…dn表示维度.

以给定的形状创建一个数组,并在数组中加入在[0,1]之间均匀分布的随机样本

a=np.random.rand(3,2,7)
print(a)
  • 1

运行结果:

[[[0.75094243 0.34889834 0.26992789 0.89588622 0.42809119 0.96484005
   0.6634415 ]
  [0.62169572 0.11474597 0.94948926 0.44991213 0.57838961 0.4081368
   0.23702698]]

 [[0.90337952 0.57367949 0.00287033 0.61714491 0.3266449  0.5270581
   0.8859421 ]
  [0.35726976 0.90853515 0.62336012 0.01582124 0.92943723 0.69089692
   0.99732285]]

 [[0.17234051 0.13713575 0.93259546 0.69681816 0.06600017 0.75546305
   0.75387619]
  [0.92302454 0.71152476 0.12427096 0.01988013 0.02621099 0.02830649
   0.24621107]]]
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

()

官方文档中给出的用法是:(d0,d1,…dn)

以给定的形状创建一个数组,数组元素来符合标准正态分布N(0,1)

若要获得一般正态分布则可用sigma * (…) + mu进行表示

a=5*np.random.randn(3,2)+2 #这是一般的正态分布
print(a)
  • 1

运算结果:

[[-0.23564282  8.12253852]
 [ 4.01745821  4.96789262]
 [-3.47455923  2.84691217]]
  • 1
  • 2

()

官方文档中给出的用法是:(low,high=None,size=None,dtype)

生成在半开半闭区间[low,high)上离散均匀分布的整数值;若high=None,则取值区间变为[0,low)

a=np.random.randint(2,7,size=(2,3))
print(a)
  • 1

运算结果:

[[2 6 4]
 [3 2 6]]
  • 1

.random_integers()

官方文档中给出的用法是:

.random_integers(low,high=None,size=None)

生成闭区间[low,high]上离散均匀分布的整数值;若high=None,则取值区间变为[1,low]

a=np.random.random_integers(3,8,size=(2,4))
print(a)
  • 1

运行结果:

[[4 7 3 7]
 [7 4 6 4]]
  • 1

此外,若要将【a,b】区间分成N等分,也可以用此函数实现 
a+(b-a)*(.random_integers(N)-1)/(N-1)