numpy中的np.random.mtrand.RandomState


numpy.random.RandomState()函數用法
可以通過numpy工具包生成模擬數據集,使用RandomState獲得隨機數生成器

from numpy.random import RandomState

rdm = RandomState(1)
注意:這里1為隨機數種子,只要隨機數種子seed相同,產生的隨機數系列就相同

a = rdm.uniform(1,2,(3,4))
print(a)
輸出結果為:

[[1.417022 1.72032449 1.00011437 1.30233257]
[1.14675589 1.09233859 1.18626021 1.34556073]
[1.39676747 1.53881673 1.41919451 1.6852195 ]]
產生一個3行4列的數組,其中每個元素都是在[1,2]區間內均勻分布的隨機數

b = rdm.rand(1,2)
print(b)
輸出為:

[[0.417022 0.72032449]]
注意:

這里的rand()里面的值若為0,就表示會隨機產生一個[0,1)之間的隨機數,並不是一個一維數組,且0可以包括,1不包含。當rand()里面數為1時,產生一個一維的一個數字數組。rand(2)返回一個一維的2個數字數組.

 

numpy里random總結
1) np.random.rand()
返回[0,1)之間的數,rand()返回一個數字,rand(1)返回一個一維的一個數字數組,rand(2)返回一個一維的2個數字數組,以此類推。rand(3,4)返回3行4列的二維數組。 
numpy.random.rand(d0,d1,…,dn)

rand函數根據給定維度生成[0,1)之間的數據,包含0,不包含1
dn表格每個維度
返回值為指定維度的array
例如:

import numpy as np

x1 = np.random.rand(1)
print(x1) #輸出:[0.79853516]
x2 = np.random.rand(2)
print(x2) #輸出:[0.3372049 0.94177767]
x3 = np.random.rand(3)
print(x3) #輸出:[0.54632154 0.63376574 0.51523793]
x4 = np.random.rand(2,3)
print(x4) #輸出:[[0.66432625 0.3004349 0.79992446]
[0.47604401 0.16257688 0.58597909]]
 2)np.random.randn()
numpy.random.randn(d0,d1,…,dn)

用法同np.random.rand()一樣,只是服從正態分布。用法同上。

標准正態分布又稱為u分布,是以0為均值、以1為標准差的正態分布,記為N(0,1)。

randn函數返回一個或一組樣本,具有標准正態分布。
dn表格每個維度
返回值為指定維度的array
3)np.random.randint()
通過low來指定起點,通過high來指定終點,通過size參數來指定數組的維度,通過dtype來確定類型。

numpy.random.randint(low, high=None, size=None, dtype=’l’)

返回隨機整數,范圍區間為[low,high),包含low,不包含high
參數:low為最小值,high為最大值,size為數組維度大小,dtype為數據類型,默認的數據類型是np.int
high沒有填寫時,默認生成隨機數的范圍是[0,low)
y1 = np.random.randint(1,size=4)
print(y1) #返回[0,1)之間的整數,只有0,所有輸出為:[0 0 0 0]

y2 = np.random.randint(-2,3,size=(2,3))
print(y2)
#輸出為[-2,3)之間的整數,輸出為:[0 0 0 0]
[[-1 -2 1]
[ 1 -1 2]]
 4)np.random.random(size=None)
通過size參數來指定維數 
生成[0,1)之間的浮點數

z1 = np.random.random()
print(z1) #輸出:0.5496674667621851
z2 = np.random.random(1)
print(z2) #輸出:[0.03831152]
z3 = np.random.random(2)
print(z3) #輸出:[0.67638162 0.72296213]
z4 = np.random.random((2,3))
print(z4) #輸出:[[0.459631 0.85138382 0.24601661]
[0.80658167 0.10955964 0.13577635]]
 

原文:https://blog.csdn.net/jieshaoxiansen/article/details/82255191


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM