数据挖掘技术-生成随机数

生成随机数

对于NumPy,与随机数相关的函数都在random模块中,其中包含了可以生成服从多种概率分布随机数的函数。以下是一些常用的随机数生成方法。

random函数是最常见的生成随机数的方法,如代码 414所示。

代码 414 生成随机数

In[26]:

print('生成的随机数组为:',np.random.random(100))

Out[26]:

生成的随机数组为: [ 0.15343184  0.51581585  0.07228451 ...,  0.24418316  0.92510545  0.57507965]

通过rand函数可以生成服从均匀分布的随机数,如代码 415所示。

代码 415 生成服从均匀分布的随机数

In[27]:

print('生成的随机数组为:\n',np.random.rand(10,5))

Out[27]:

 生成的随机数组为: [1.73329117e-02 1.61461499e-01 1.79152923e-01 7.97357678e-01

 6.78250272e-01 3.88280855e-01 5.04455793e-01 3.44226912e-01

 7.87667824e-02 5.78000692e-01 7.76641651e-01 5.99261927e-01

 6.07268724e-01 6.25210102e-01 7.61252131e-01 3.07777482e-01

 3.40129594e-01 5.97379374e-01 6.25227765e-01 4.49948399e-01

 2.04412256e-01 7.69762056e-02 7.29730624e-01 9.62751698e-01

 9.36320478e-01 9.86831714e-04 9.23996288e-01 7.41830296e-01

 9.24793660e-01 1.53522920e-01 8.04343205e-01 5.66026809e-01

 3.83793311e-01 7.87265158e-01 3.07260257e-01 8.06056434e-01

 4.78850092e-01 3.79148175e-01 3.90259936e-02 6.60632262e-01

 1.33616237e-01 8.63864902e-01 5.28585683e-01 5.12617400e-01

 6.63997515e-01 8.85422858e-01 2.07762319e-01 3.00134387e-01

 8.41395948e-01 7.71031557e-01 3.34830896e-01 1.46132428e-02

 4.21885506e-01 5.55145466e-02 7.55937979e-01 2.70400663e-01

 1.78460452e-01 4.96812186e-01 9.23888622e-01 8.45465155e-02

 7.61207211e-01 1.21153246e-01 5.71517970e-01 9.38249143e-01

 9.58878234e-01 5.09971971e-01 9.30794433e-01 5.83065592e-01

 9.05065964e-01 8.78605479e-01 8.49514733e-01 4.52560141e-01

 7.32729098e-01 9.91979141e-01 9.53091110e-01 4.94674437e-01

 6.20548815e-01 1.77622819e-01 4.55394387e-01 4.28992658e-01

 3.00133580e-01 9.60724654e-01 6.56044928e-01 5.37570855e-01

 7.84076609e-01 9.21291034e-01 2.54452422e-01 4.94625680e-01

 9.54654077e-01 4.20659974e-01 6.36737704e-02 2.61376530e-01

 2.27563572e-01 7.06529548e-01 1.09355612e-01 9.48243484e-02

 9.77279150e-01 5.33573303e-01 8.24696899e-01 3.35579175e-01]

通过randn函数可以生成服从正态分布的随机数,如代码 416所示。

代码 416 生成服从正态分布的随机数

In[28]:

print('生成的随机数组为:\n',np.random.randn(10,5))

Out[28]:

 生成的随机数组为:

 [[ 0.55268777 -0.06370959  0.57107334 -0.09045807 -1.12157304]

 [ 0.33883109  0.28922059  0.12248114  0.31902443 -0.2180361 ]

 [ 0.71326747 -2.22720369 -1.22215882 -0.33890839 -0.496152  ]

 [ 1.01496238  0.31464479 -1.06793133  0.23469707 -0.00711526]

 [ 0.86745891 -0.38430613  1.09139003 -0.45686103 -2.4703483 ]

 [-0.10860193 -0.00619832  0.27996441  1.46741951  0.32472232]

 [-0.63673776  0.8146072  -1.35201063 -0.14649395  2.23091197]

 [ 1.64671098  0.29048823  0.49993409 -0.2815476  -1.60360806]

 [-1.42763     0.29516333 -1.78320705 -0.32059829  0.01754998]

 [-0.52720247  0.7718815   0.38423834 -1.58833901 -1.91588908]]

生成给定上下范围的随机数,如代码 417所示。

代码 417 生成给定上下范围的随机数

In[29]:

print('生成的随机数组为:',np.random.randint(2,10,size = [2,5]))

Out[29]:

生成的随机数组为: [[6 6 6 6 8]

 [9 6 6 8 4]]

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知识世界

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值