numpy中生成隨機數(shù)的幾種常用函數(shù)(小結(jié))
1、使用numpy生成隨機數(shù)的幾種方式
1)生成指定形狀的0-1之間的隨機數(shù):np.random.random()和np.random.rand()
array1 = np.random.random((3)) display(array1) # ----------------------------------- array2 = np.random.random((3,4)) display(array2) # ----------------------------------- array3 = np.random.rand(3) display(array3) # ----------------------------------- array4 = np.random.rand(2,3) display(array4)
① 操作如下
② 區(qū)別如下
2)生成指定數(shù)值范圍內(nèi)的隨機整數(shù):np.random.randint()
① 操作如下
array9 = np.random.randint(low=1, high=10, size=6, dtype=np.int32) display(array9) # --------------------------------------------------------- array10 = np.random.randint(low=1, high=10, size=(2,3), dtype=np.int64) display(array10) # --------------------------------------------------------- array11 = np.random.randint(low=1, high=10, size=(2,3,4), dtype=np.int32) display(array11)
② 結(jié)果如下
3)與正態(tài)分布有關(guān)的幾個隨機函數(shù):np.random.randn()和np.random.normal()
- np.random.randn 生成服從均值為0,標(biāo)準(zhǔn)差為1的標(biāo)準(zhǔn)正態(tài)分布隨機數(shù);
- np.random.normal 生成指定均值和標(biāo)準(zhǔn)差的正態(tài)分布隨機數(shù);
array5 = np.random.randn(3) display(array5) # --------------------------------------------- array6 = np.random.randn(2,3) display(array6) # --------------------------------------------- array7 = np.random.normal(loc=2,scale=0.5,size=6) display(array7) # --------------------------------------------- array8 = np.random.normal(loc=2,scale=0.5,size=6).reshape(2,3) display(array8)
① 結(jié)果如下
② 區(qū)別如下
4)均勻分布隨機函數(shù):np.random.uniform()
用法:生成指定范圍內(nèi)的服從均勻分布的隨機數(shù);
array11 = np.random.uniform(1,10,5) display(array11) # --------------------------------- array12 = np.random.uniform(1,10,(2,3)) display(array12)
① 結(jié)果如下
5)np.random.seed():按照種子來生成隨機數(shù),種子一樣,則生成的隨機數(shù)結(jié)果必一致
① 操作如下
np.random.seed(3) a = np.random.rand(3) display(a) np.random.seed(3) b = np.random.rand(3) display(b) # -------------------------- np.random.seed() a = np.random.rand(3) display(a) np.random.seed() b = np.random.rand(3) display(b)
② 結(jié)果如下
6)np.random.shuffle():打亂數(shù)組元素順序(原地操作數(shù)組)
c = np.arange(10) display(c) np.random.shuffle(c) display(c)
① 結(jié)果如下
7)np.random.choice():按照指定概率從指定數(shù)組中,生成隨機數(shù);
① np.random.choice()函數(shù)的用法說明
d = np.random.choice([1,2,3,4], p=[0.1, 0.2, 0.3, 0.4]) display(d)
說明:上述函數(shù)第一個參數(shù)表示的是數(shù)組,第二個參數(shù)表示的是概率值。上述函數(shù)的含義是當(dāng)進(jìn)行n多次重復(fù)實驗的時候,抽取1的概率為0.1,抽取2的概率為0.2,抽取3的概率為0.3,抽取4的概率為0.4。
② 結(jié)果如下
③ 隨即進(jìn)行10000次重復(fù)實驗,檢測每一個數(shù),被抽取到的概率
list1 = [0,0,0,0] for i in range(100000): f = np.random.choice([1,2,3,4], p=[0.1, 0.2, 0.3, 0.4]) list1[f-1] = list1[f-1] + 1 display(list1) result_list = [value/sum(list1) for value in list1] display(result_list)
④ 結(jié)果如下
⑤ 模擬進(jìn)行100000次擲硬幣重復(fù)實驗,檢測每一面,被抽取到的概率
list1 = [0,0] for i in range(100000): f = np.random.choice([0,1], p=[0.5,0.5]) list1[f] = list1[f] + 1 display(list1) result_list = [value/sum(list1) for value in list1] display(result_list)
⑥ 結(jié)果如下
到此這篇關(guān)于numpy中生成隨機數(shù)的幾種常用函數(shù)(小結(jié))的文章就介紹到這了,更多相關(guān)numpy 生成隨機數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- python numpy 常用隨機數(shù)的產(chǎn)生方法的實現(xiàn)
- OpenCV python sklearn隨機超參數(shù)搜索的實現(xiàn)
- Sklearn調(diào)優(yōu)之網(wǎng)格搜索與隨機搜索原理詳細(xì)分析
- Numpy隨機抽樣的實現(xiàn)
- Numpy的np.random隨機模塊詳解
- Python?sklearn庫中的隨機森林模型詳解
- numpy中幾種隨機數(shù)生成函數(shù)的用法
- Numpy創(chuàng)建數(shù)組和隨機數(shù)組的方法小結(jié)
- Pandas+Numpy+Sklearn隨機取數(shù)的實現(xiàn)示例
相關(guān)文章
python實現(xiàn)合并多個list及合并多個django QuerySet的方法示例
這篇文章主要介紹了python實現(xiàn)合并多個list及合并多個django QuerySet的方法,結(jié)合實例形式分析了Python使用chain合并多個list以及合并Django中多個QuerySet的相關(guān)操作技巧,需要的朋友可以參考下2019-06-06vscode 配置 python3開發(fā)環(huán)境的方法
這篇文章主要介紹了vscode 配置 python3開發(fā)環(huán)境的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09使用Py2Exe for Python3創(chuàng)建自己的exe程序示例
今天小編就為大家分享一篇使用Py2Exe for Python3創(chuàng)建自己的exe程序示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10Python tkinter實現(xiàn)桌面軟件流程詳解
這篇文章主要介紹了Python tkinter做一個好用的桌面軟件,100%你會愛上它,文中的示例代碼講解詳細(xì),快跟小編一起動手試一試吧2022-10-10Transpose 數(shù)組行列轉(zhuǎn)置的限制方式
今天小編就為大家分享一篇Transpose 數(shù)組行列轉(zhuǎn)置的限制方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02Python數(shù)據(jù)分析入門之?dāng)?shù)據(jù)讀取與存儲
今天繼續(xù)帶大家學(xué)習(xí)python數(shù)據(jù)分析,下文中有非常詳細(xì)的代碼示例,清楚地解釋了python數(shù)據(jù)讀取與存儲的相關(guān)知識,需要的朋友可以參考下2021-05-05