溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

numpy.random的示例分析

發(fā)布時(shí)間:2021-12-15 15:19:55 來源:億速云 閱讀:182 作者:小新 欄目:大數(shù)據(jù)

這篇文章給大家分享的是有關(guān)numpy.random的示例分析的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

from numpy import random

numpy.random.uniform(low=0.0, high=1.0, size=None)


 生出size個(gè)符合均分布的浮點(diǎn)數(shù),取值范圍為[low, high),默認(rèn)取值范圍為[0, 1.0)

>>> random.uniform()
0.3999807403689315
>>> random.uniform(size=1)
array([0.55950578])
>>> random.uniform(5, 6)
5.293682668235986
>>> random.uniform(5, 6, size=(2,3))
array([[5.82416021, 5.68916836, 5.89708586],
       [5.63843125, 5.22963754, 5.4319899 ]])

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


 生成一個(gè)(d0, d1, ..., dn)維的數(shù)組,數(shù)組的元素取自[0, 1)上的均分布,若沒有參數(shù)輸入,則生成一個(gè)數(shù)

>>> random.rand()
0.4378166124207712
>>> random.rand(1)
array([0.69845956])
>>> random.rand(3,2)
array([[0.15725424, 0.45786148],
       [0.63133098, 0.81789056],
       [0.40032941, 0.19108526]])
>>> random.rand(3,2,1)
array([[[0.00404447],
        [0.3837963 ]],

       [[0.32518355],
        [0.82482599]],

       [[0.79603205],
        [0.19087375]]])

numpy.random.randint(low, high=None, size=None, dtype='I')


生成size個(gè)整數(shù),取值區(qū)間為[low, high),若沒有輸入?yún)?shù)high則取值區(qū)間為[0, low)

>>> random.randint(8)
5
>>> random.randint(8, size=1)
array([1])
>>> random.randint(8, size=(2,2,3))
array([[[4, 7, 0],
        [1, 4, 1]],

       [[2, 2, 5],
        [7, 6, 4]]])
>>> random.randint(8, size=(2,2,3), dtype='int64')
array([[[5, 5, 6],
        [2, 7, 2]],

       [[2, 7, 6],
        [4, 7, 7]]], dtype=int64)

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


 生成size個(gè)整數(shù),取值區(qū)間為[low, high], 若沒有輸入?yún)?shù)high則取值區(qū)間為[1, low],注意這里左右都是閉區(qū)間

>>> random.random_integers(5)
1
>>> random.random_integers(5, size=1)
array([2])
>>> random.random_integers(4, 5, size=(2,2))
array([[5, 4],
       [4, 4]])

numpy.random.random(size=None)


 產(chǎn)生[0.0, 1.0)之間的浮點(diǎn)數(shù)

>>> random.random(5)
array([0.94128141, 0.98725499, 0.48435957, 0.90948135, 0.40570882])
>>> random.random()
0.49761416226728084

 相同用法:

  • numpy.random.random_sample

  • numpy.random.ranf

  • numpy.random.sample (抽取不重復(fù))

numpy.random.bytes(length)


 生成隨機(jī)字節(jié)

>>> random.bytes(1)
b'%'
>>> random.bytes(2)
b'\xd0\xc3'

numpy.random.choice(a, size=None, replace=True, p=None)


 從a(數(shù)組)中選取size(維度)大小的隨機(jī)數(shù),replace=True表示可重復(fù)抽取,p是a中每個(gè)數(shù)出現(xiàn)的概率

 若a是整數(shù),則a代表的數(shù)組是arange(a)

>>> random.choice(5)
3
>>> random.choice([0.2, 0.4])
0.2
>>> random.choice([0.2, 0.4], p=[1, 0])
0.2
>>> random.choice([0.2, 0.4], p=[0, 1])
0.4
>>> random.choice(5, 5)
array([1, 2, 4, 2, 4])
>>> random.choice(5, 5, False)
array([2, 0, 1, 4, 3])
>>> random.choice(100, (2, 3, 5), False)
array([[[43, 81, 48,  2,  8],
        [33, 79, 30, 24, 83],
        [ 3, 82, 97, 49, 98]],

       [[32, 12, 15,  0, 96],
        [19, 61,  6, 42, 60],
        [ 7, 93, 20, 18, 58]]])

numpy.random.permutation(x)


 隨機(jī)打亂x中的元素。若x是整數(shù),則打亂arange(x),若x是一個(gè)數(shù)組,則將copy(x)的第一位索引打亂,意思是先復(fù)制x,對(duì)副本進(jìn)行打亂處理,打亂只針對(duì)數(shù)組的第一維

>>> random.permutation(5)
array([1, 2, 3, 0, 4])
>>> random.permutation(5)
array([1, 4, 3, 2, 0])
>>> random.permutation([[1,2,3],[4,5,6]])
array([[1, 2, 3],
       [4, 5, 6]])
>>> random.permutation([[1,2,3],[4,5,6]])
array([[4, 5, 6],
       [1, 2, 3]])

numpy.random.shuffle(x)


 與permutation類似,隨機(jī)打亂x中的元素。若x是整數(shù),則打亂arange(x). 但是shuffle會(huì)對(duì)x進(jìn)行修改

>>> a = arange(5)
>>> a
array([0, 1, 2, 3, 4])
>>> random.permutation(a)
array([1, 4, 3, 2, 0])
>>> a
array([0, 1, 2, 3, 4])
>>> random.shuffle(a)
>>> a
array([4, 1, 3, 2, 0])

numpy.random.seed(seed=None)


 設(shè)置隨機(jī)生成算法的初始值

其它符合函數(shù)分布的隨機(jī)數(shù)函數(shù)


  • numpy.random.beta

  • numpy.random.binomial

  • numpy.random.chisquare

  • numpy.random.dirichlet

  • numpy.random.exponential

  • numpy.random.f

  • numpy.random.gamma

  • numpy.random.geometric

  • numpy.random.gumbel

  • numpy.random.hypergeometric

  • numpy.random.laplace

  • numpy.random.logistic

  • numpy.random.lognormal

  • numpy.random.logseries

  • numpy.random.multinomial

  • numpy.random.multivariate_normal

  • numpy.random.negative_binomial

  • numpy.random.noncentral_chisquare

  • numpy.random.noncentral_f

  • numpy.random.normal

  • numpy.random.pareto

  • numpy.random.poisson

  • numpy.random.power

  • numpy.random.randn

  • numpy.random.rayleigh

  • numpy.random.standard_cauchy

  • numpy.random.standard_exponential

  • numpy.random.standard_gamma

  • numpy.random.standard_normal

  • numpy.random.standard_t

  • numpy.random.triangular

  • numpy.random.vonmises

  • numpy.random.wald

  • numpy.random.weibull

  • numpy.random.zipf

感謝各位的閱讀!關(guān)于“numpy.random的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI