- np.random.rand() --> 生成指定維度的的[0,1)范圍之間的隨機(jī)數(shù)疫衩,輸入?yún)?shù)為維度
例如:
>>>np.random.rand(4,3,2)
生成一個(gè)shape為[4,3,2]的array,array中每個(gè)元素都是一個(gè)[0,1)之間的隨機(jī)數(shù)
- np.random.randn() --> 生成指定維度的服從標(biāo)準(zhǔn)正態(tài)分布的隨機(jī)數(shù)取视,輸入?yún)?shù)為維度
例如:
>>>np.random.randn() :沒有參數(shù),只返回單個(gè)數(shù)據(jù)
>>>np.random.randn(2,4):返回一個(gè)shape為[2,4]的array骑疆,array中的元素服從標(biāo)準(zhǔn)正態(tài)分布
- np.random.randint(low, high = None, size = None,dtype = 'l')--> 返回隨機(jī)數(shù)或者隨機(jī)數(shù)組成的array
輸入?yún)?shù)有:
- low鲫凶,high(范圍區(qū)間為[low,high)),low不可以>=high
- size礁鲁,
- dtype(默認(rèn)為int)
例如:
>>>np.random.randint(1,size=5):
返回[0,1)之間的隨機(jī)整數(shù)盐欺,尺寸為5,因此只有0
array([0,0,0,0,0])
>>>np.random.randint(1,5):
返回一個(gè)[1,5)之間的隨機(jī)整數(shù)
4
錯(cuò)誤實(shí)例:
np.random.randint(size = 2)
np.random.randint(high = 1, size = 2)
np.random.randint(high = 1)
TypeError: randint() takes at least 1 positional argument (0 given)
randint()必須有一個(gè)位置參數(shù)
np.random.randint(high = 1,1)
SyntaxError: positional argument follows keyword argument
位置參數(shù)跟在了關(guān)鍵字參數(shù)的后面仅醇,是不可以的
- np.random.random_integers(low,high = None,size = None)-->返回范圍為[low,high] 閉區(qū)間 隨機(jī)整數(shù)
>>>np.random.random_integer(1,size = 5)
array([1,1,1,1,1])
5.np.random.random(size = (2,2))-->生成隨機(jī)浮點(diǎn)數(shù)陣列
>>>np.random.random(size = (2,2))
[[ 0.25303772 0.45417512]
[ 0.76053763 0.12454433]]
>>>np.random.rand(2,2) 等價(jià)于 np.random.random(size = (2,2))
也就是說二者都只提供size參數(shù)冗美,但一個(gè)是位置參數(shù),一個(gè)是關(guān)鍵字參數(shù)析二,二者返回的都是[0,1)范圍的隨機(jī)浮點(diǎn)數(shù)
6.np.random.choice(a, size = None, replace = True, p = None) --> 從給定數(shù)組a中隨機(jī)選擇,p可以指定a中每個(gè)元素被選擇的概率
例如:
當(dāng)a為整數(shù)時(shí)粉洼,隨機(jī)選擇數(shù)組np.arange(a)中的數(shù)
>>>np.random.choice(5,3)
array([4,1,4])
np.arange(5) == array([0,1,2,3,4])节预,從該array中隨機(jī)選擇3個(gè)數(shù)組成一個(gè)新的array并返回
>>>np.random.choice(5,3,replace=False)
array([0,3,1]) , 當(dāng)replace = False時(shí),返回的數(shù)中不可以有重復(fù)的
>>>np.random.choice(5,size = (3,2))
array([[1,0],
[4.2],
[3,3]])
p是一個(gè)list,p的size 必須與a的size一致属韧,p中每個(gè)元素對(duì)應(yīng)了a中每個(gè)元素被選擇的概率
>>>np.random.choice(list_tmp,size = (3,3),p = [0.1,0.6,0.1,0.1,0.1])
-
np.random.seed() -->使隨即數(shù)據(jù)可預(yù)測(cè)安拟,對(duì)于同一個(gè)seed,生成的隨機(jī)數(shù)相同
例如
>>>np.random.seed(0)
>>>np.random.rand(1)
array([0.5488135])
>>>np.random.seed(1)
>>>np.random.rand(1)
array([0.4359949])
>>>np.random.seed(1)
>>>np.random.rand(1)
array([0.4359949])