解析numpy常用的隨機(jī)數(shù)生成方法
numpy生成隨機(jī)數(shù)的常用方法解析
隨機(jī)數(shù)在數(shù)據(jù)分析和機(jī)器學(xué)習(xí)中具有重要的作用。numpy是Python中一個(gè)常用的數(shù)值計(jì)算庫(kù),提供了多種生成隨機(jī)數(shù)的方法。本文將對(duì)numpy生成隨機(jī)數(shù)的常用方法進(jìn)行解析,并給出具體的代碼示例。
numpy提供了生成隨機(jī)整數(shù)的函數(shù)numpy.random.randint()。該函數(shù)可以生成指定范圍內(nèi)的隨機(jī)整數(shù)。
import numpy as np
# 生成范圍在[low, high)之間的隨機(jī)整數(shù)
rand_int = np.random.randint(low, high, size)
其中,low表示生成隨機(jī)整數(shù)的下界(包含),high表示上界(不包含),size表示生成的隨機(jī)整數(shù)的數(shù)量。
示例:
import numpy as np
rand_int = np.random.randint(1, 10, size=5)
print(rand_int)
輸出:
[4 9 5 3 1]
上述代碼生成了5個(gè)范圍在1到10之間的隨機(jī)整數(shù)。
- 隨機(jī)浮點(diǎn)數(shù)
numpy提供了生成隨機(jī)浮點(diǎn)數(shù)的函數(shù)numpy.random.rand()和numpy.random.randn()。
import numpy as np
# 生成[0, 1)之間的均勻分布的隨機(jī)浮點(diǎn)數(shù)
rand_float = np.random.rand(size)
# 生成符合標(biāo)準(zhǔn)正態(tài)分布的隨機(jī)浮點(diǎn)數(shù)
rand_normal_float = np.random.randn(size)
其中,rand_float生成[0, 1)之間均勻分布的隨機(jī)浮點(diǎn)數(shù),rand_normal_float生成符合標(biāo)準(zhǔn)正態(tài)分布的隨機(jī)浮點(diǎn)數(shù)。size表示生成的隨機(jī)浮點(diǎn)數(shù)的數(shù)量。
示例:
import numpy as np
rand_float = np.random.rand(5)
rand_normal_float = np.random.randn(5)
print(rand_float)
print(rand_normal_float)
輸出:
[0.83600534 0.69029467 0.44770399 0.61348757 0.93889918]
[-0.9200914 0.45598762 -0.76400891 -0.18554811 1.67634905]
上述代碼生成了一個(gè)長(zhǎng)度為5的均勻分布隨機(jī)浮點(diǎn)數(shù)數(shù)組和一個(gè)長(zhǎng)度為5的標(biāo)準(zhǔn)正態(tài)分布隨機(jī)浮點(diǎn)數(shù)數(shù)組。
- 隨機(jī)種子
numpy生成的隨機(jī)數(shù)默認(rèn)是偽隨機(jī)數(shù),即每次運(yùn)行程序生成的隨機(jī)數(shù)是不同的。如果想要生成相同的隨機(jī)數(shù)序列,可以使用隨機(jī)種子。
import numpy as np
# 設(shè)置隨機(jī)種子
np.random.seed(seed)
其中,seed表示隨機(jī)種子的值。相同隨機(jī)種子生成的隨機(jī)數(shù)序列是相同的。
示例:
import numpy as np
np.random.seed(0)
rand_int = np.random.randint(1, 10, size=5)
print(rand_int)
np.random.seed(0)
rand_int = np.random.randint(1, 10, size=5)
print(rand_int)
輸出:
[6 1 4 8 4]
[6 1 4 8 4]
上述代碼設(shè)置了隨機(jī)種子為0,使用相同的隨機(jī)種子生成了兩個(gè)相同的隨機(jī)整數(shù)數(shù)組。
通過(guò)本文對(duì)numpy生成隨機(jī)數(shù)的常用方法的解析和代碼示例,相信讀者能更加熟悉numpy庫(kù)中生成隨機(jī)數(shù)的操作。在數(shù)據(jù)分析和機(jī)器學(xué)習(xí)等領(lǐng)域,隨機(jī)數(shù)的生成是常見的操作,掌握這些方法對(duì)于進(jìn)行相關(guān)的數(shù)據(jù)實(shí)驗(yàn)和模型訓(xùn)練是非常有幫助的。
相關(guān)推薦
-
Python初學(xué)者必須了解的五個(gè)基礎(chǔ)代碼示例
Python初學(xué)者必知的5個(gè)入門代碼示例Python是一種簡(jiǎn)潔而強(qiáng)大的編程語(yǔ)言,適合初學(xué)者入門。在學(xué)習(xí)Python的過(guò)程中,掌握幾個(gè)基本的入門代碼示例對(duì)于建立基礎(chǔ)知識(shí)和提高編程能力非常重要。下面給出了
-
使用Python中的len函數(shù)統(tǒng)計(jì)文本中的單詞數(shù)量的示例
Python中的len函數(shù)應(yīng)用實(shí)例:如何利用它統(tǒng)計(jì)文本中的單詞數(shù)量在Python編程中,len函數(shù)是一個(gè)非常有用的函數(shù),它用于返回一個(gè)對(duì)象的長(zhǎng)度或元素的個(gè)數(shù)。,將介紹如何使用len函數(shù)來(lái)統(tǒng)計(jì)文
-
了解Python編程的入門級(jí)代碼示例
了解Python編程的入門級(jí)代碼示例Python是一種簡(jiǎn)單易學(xué),功能強(qiáng)大的編程語(yǔ)言。對(duì)于初學(xué)者來(lái)說(shuō),了解Python編程的入門級(jí)代碼示例是非常重要的。本文將為您提供一些具體的代碼示例,幫助您快速入門。
-
深入解析和示例:PHP8中的數(shù)據(jù)類型轉(zhuǎn)換
PHP8數(shù)據(jù)類型轉(zhuǎn)換:全面解析和示例在PHP8中,數(shù)據(jù)類型轉(zhuǎn)換是一個(gè)非常重要的主題。它允許我們將一個(gè)數(shù)據(jù)類型轉(zhuǎn)換為另一個(gè)數(shù)據(jù)類型,使我們能夠更靈活地處理數(shù)據(jù)。本文將對(duì)PHP8中的數(shù)據(jù)類型轉(zhuǎn)換進(jìn)行全面解
-
HTML全局屬性的詳細(xì)解讀與應(yīng)用示例
HTML全局屬性的詳細(xì)解讀與應(yīng)用示例在HTML中,全局屬性是可以應(yīng)用于任何HTML元素的屬性。全局屬性不僅僅在單個(gè)元素上起作用,而是適用于所有的HTML元素。在本篇文章中,我們將詳細(xì)解讀并提供應(yīng)用示例















