最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python NumPy中的隨機(jī)數(shù)及ufuncs函數(shù)使用示例詳解

 更新時間:2023年05月17日 11:29:30   作者:魔王不會哭  
這篇文章主要介紹了Python NumPy中的隨機(jī)數(shù)及ufuncs函數(shù)使用,ufunc函數(shù)是NumPy中的一種通用函數(shù),它可以對數(shù)組中的每個元素進(jìn)行操作,而不需要使用循環(huán)語句,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)吧

什么是隨機(jī)數(shù)

隨機(jī)數(shù)并不意味著每次都有不同的數(shù)字。隨機(jī)意味著無法在邏輯上預(yù)測的事物。

偽隨機(jī)和真隨機(jī)

計算機(jī)在程序上工作,程序是權(quán)威的指令集。

因此,這意味著必須有某種算法來生成隨機(jī)數(shù)。

如果存在生成隨機(jī)數(shù)的程序,則可以預(yù)測它,因此它就不是真正的隨機(jī)數(shù)。

通過生成算法生成的隨機(jī)數(shù)稱為偽隨機(jī)數(shù)。

我們可以生成真正的隨機(jī)數(shù)嗎

是的。

為了在我們的計算機(jī)上生成一個真正的隨機(jī)數(shù),我們需要從某個外部來源獲取隨機(jī)數(shù)據(jù)。

外部來源通常是我們的擊鍵、鼠標(biāo)移動、網(wǎng)絡(luò)數(shù)據(jù)等。

我們不需要真正的隨機(jī)數(shù),除非它與安全性(例如加密密鑰)有關(guān)或應(yīng)用的基礎(chǔ)是隨機(jī)性(例如數(shù)字輪盤賭輪)。

在本教程中,我們將使用偽隨機(jī)數(shù)。

生成隨機(jī)數(shù)

NumPy 提供了 random 模塊來處理隨機(jī)數(shù)。

實例

生成一個 0 到 100 之間的隨機(jī)整數(shù):

from numpy import random
x = random.randint(100)
print(x)

運(yùn)行實例

生成隨機(jī)浮點(diǎn)

random 模塊的 rand() 方法返回 0 到 1 之間的隨機(jī)浮點(diǎn)數(shù)。

實例

生成一個 0 到 100 之間的隨機(jī)浮點(diǎn)數(shù):

from numpy import random
x = random.rand()
print(x)

運(yùn)行實例

生成隨機(jī)數(shù)組

在 NumPy 中,我們可以使用上例中的兩種方法來創(chuàng)建隨機(jī)數(shù)組。

整數(shù)

randint() 方法接受 size 參數(shù),您可以在其中指定數(shù)組的形狀。

實例

生成一個 1-D 數(shù)組,其中包含 5 個從 0 到 100 之間的隨機(jī)整數(shù):

from numpy import random
x=random.randint(100, size=(5))
print(x)

運(yùn)行實例

實例

生成有 3 行的 2-D 數(shù)組,每行包含 5 個從 0 到 100 之間的隨機(jī)整數(shù):

from numpy import random
x = random.randint(100, size=(3, 5))
print(x)

運(yùn)行實例

浮點(diǎn)數(shù)

rand() 方法還允許您指定數(shù)組的形狀。

實例

生成包含 5 個隨機(jī)浮點(diǎn)數(shù)的 1-D 數(shù)組:

from numpy import random
x = random.rand(5)
print(x)

運(yùn)行實例

實例

生成有 3 行的 2-D 數(shù)組,每行包含 5 個隨機(jī)數(shù):

from numpy import random
x = random.rand(3, 5)
print(x)

運(yùn)行實例

從數(shù)組生成隨機(jī)數(shù)

choice() 方法使您可以基于值數(shù)組生成隨機(jī)值。

choice() 方法將數(shù)組作為參數(shù),并隨機(jī)返回其中一個值。

實例

返回數(shù)組中的值之一:

from numpy import random
x = random.choice([3, 5, 7, 9])
print(x)

運(yùn)行實例

choice() 方法還允許您返回一個值數(shù)組。

請?zhí)砑右粋€ size 參數(shù)以指定數(shù)組的形狀。

實例

生成由數(shù)組參數(shù)(3、5、7 和 9)中的值組成的二維數(shù)組:

from numpy import random
x = random.choice([3, 5, 7, 9], size=(3, 5))
print(x)

運(yùn)行實例

什么是 ufuncs

ufuncs 指的是“通用函數(shù)”(Universal Functions),它們是對 ndarray 對象進(jìn)行操作的 NumPy 函數(shù)。

為什么要使用 ufuncs

ufunc 用于在 NumPy 中實現(xiàn)矢量化,這比迭代元素要快得多。

它們還提供廣播和其他方法,例如減少、累加等,它們對計算非常有幫助。

ufuncs 還接受其他參數(shù),比如:

  • where 布爾值數(shù)組或條件,用于定義應(yīng)在何處進(jìn)行操作。
  • dtype 定義元素的返回類型。
  • out 返回值應(yīng)被復(fù)制到的輸出數(shù)組。

什么是向量化

將迭代語句轉(zhuǎn)換為基于向量的操作稱為向量化。

由于現(xiàn)代 CPU 已針對此類操作進(jìn)行了優(yōu)化,因此速度更快。

對兩個列表的元素進(jìn)行相加:

list 1: [1, 2, 3, 4]

list 2: [4, 5, 6, 7]

一種方法是遍歷兩個列表,然后對每個元素求和。

實例

如果沒有 ufunc,我們可以使用 Python 的內(nèi)置 zip() 方法:

x = [1, 2, 3, 4]
y = [4, 5, 6, 7]
z = []
for i, j in zip(x, y):
  z.append(i + j)
print(z)

運(yùn)行實例

對此,NumPy 有一個 ufunc,名為 add(x, y),它會輸出相同的結(jié)果。

實例

通過 ufunc,我們可以使用 add() 函數(shù):

import numpy as np
x = [1, 2, 3, 4]
y = [4, 5, 6, 7]
z = np.add(x, y)
print(z)

運(yùn)行實例

到此這篇關(guān)于Python NumPy中的隨機(jī)數(shù)及ufuncs函數(shù)使用示例詳解的文章就介紹到這了,更多相關(guān)Python NumPy隨機(jī)數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

乌审旗| 会昌县| 宣恩县| 泽州县| 金华市| 化德县| 贵德县| 汉源县| 堆龙德庆县| 宝山区| 阜阳市| 涟源市| 延吉市| 内江市| 通河县| 元朗区| 乌兰县| 沙湾县| 会昌县| 格尔木市| 茂名市| 阜新市| 四会市| 扎兰屯市| 古蔺县| 康平县| 孟州市| 比如县| 辽宁省| 南江县| 博乐市| 东乡| 安泽县| 南昌县| 贞丰县| 定襄县| 清水河县| 宁阳县| 肥城市| 腾冲县| 大埔区|