Python np.random.randint() 參數 詳解 用法

2024-06-02雲端運算與程式碼1061

np.random.randint() 是 NumPy 庫中的一個函數,用於從給定的範圍內生成隨機整數。這個函數非常有用,尤其是在需要進行隨機采樣或模擬的場合。

參數詳解

Python np.random.randint() 參數 詳解 用法

np.random.randint(low, high=None, size=None, dtype='l')

low:

整數,指定生成的隨機數的下限(包含)。

如果 high 參數為 None,則這個參數既作為下限也作為上限,生成的是 [low, low] 範圍內的隨機整數,即總是 low 本身。

high:

整數或 None(默認為 None),指定生成的隨機數的上限(不包含)。

如果設置為 None,則 low 參數將作為上限和下限,如上所述。

size:

整數或整數元組,指定輸出的形狀。例如,size=3 會返回一個包含 3 個隨機數的數組,而 size=(2, 3) 會返回一個 2x3 的數組,其中每個元素都是一個隨機數。

如果省略此參數,則返回一個單一的隨機數。

dtype:

數據類型(默認為 int 或長整數 l),指定輸出數組的數據類型。

用法示例

生成一個 0 到 9 之間的隨機整數:

python
import numpy as np  
random_int = np.random.randint(0, 10)  
print(random_int)

生成一個形狀為 (3, 2) 的數組,數組中的元素是 0 到 5 之間的隨機整數:

python

random_array = np.random.randint(0, 6, size=(3, 2))  
print(random_array)

只使用 low 參數,生成一個與 low 相同的隨機整數(在這種情況下,它並不真正是“隨機”的,因為結果總是 low):

python

random_int_same = np.random.randint(5, high=None)  
print(random_int_same)  # 輸出總是 5

指定輸出數組的數據類型為 np.int8:

python

random_int_int8 = np.random.randint(0, 10, dtype=np.int8)  
print(random_int_int8)

示例1:生成一個隨機浮點數數組

python

import numpy as np
# 之前的代碼...
# random_int = np.random.randint(0, 10)  # 假設這行代碼已經被執行過
# random_array = np.random.randint(0, 6, size=(3, 2))  # 假設這行代碼也已經被執行過
# 生成一個形狀為(2, 3)的隨機浮點數數組,範圍在0到1之間
random_float_array = np.random.rand(2, 3)
print("Random float array:")
print(random_float_array)

示例2:從正態分布中抽取隨機樣本

python

import numpy as np
# 之前的代碼...
# 生成一個形狀為(4,)的數組,其元素來自均值為0、標準差為1的正態分布
normal_distributed_samples = np.random.normal(loc=0.0, scale=1.0, size=4)
print("Random samples from normal distribution:")
print(normal_distributed_samples)

示例3:從給定的概率分布中抽取隨機樣本(例如,二項分布)

python

import numpy as np
# 之前的代碼...
# 生成一個形狀為(3,)的數組,其元素來自參數為n=10和p=0.5的二項分布
binomial_samples = np.random.binomial(n=10, p=0.5, size=3)
print("Random samples from binomial distribution:")
print(binomial_samples)

示例4:打亂一個數組的順序

python

import numpy as np
# 之前的代碼...
# 假設我們有一個數組需要被打亂
original_array = np.array([1, 2, 3, 4, 5])
# 使用numpy的random.shuffle函數(註意這個函數是直接修改原數組的)
np.random.shuffle(original_array)
print("Shuffled array:")
print(original_array)

或者,如果你想要一個不修改原數組的打亂版本,你可以使用`np.random.permutation`:

python

# 使用np.random.permutation創建一個新的打亂順序的數組
shuffled_array = np.random.permutation(original_array)
print("Shuffled array (without modifying original):")
print(shuffled_array)


分享給朋友:

“Python np.random.randint() 參數 詳解 用法” 的相關文章

html a標簽target屬性

html a標簽target屬性

HTML語言中的標簽用於定義超鏈接。其中,標簽有一個屬性叫做target,它用於指定鏈接在何處打開。目前,標簽的target屬性有以下四個取值:- _self:鏈接會在當前窗口中打開(默認值),這意味著打開新的文檔或資源時,頁面會在當前瀏覽器窗口中重新加載,並將新文檔或資源顯示在當前窗口中。基於以上…

meter元素顏色,可以使用CSS樣式來設置顏色

meter元素顏色,可以使用CSS樣式來設置顏色

meter元素可以用於表示已知範圍內的度量值,可以使用CSS樣式來設置顏色。具體來說,可以使用 <code>::-webkit-meter-optimum-value, ::-moz-meter-bar, ::-webkit-meter-bar</code> 偽元素來設置顏色…

一個簡單的html大海日出特效的代碼

一個簡單的html大海日出特效的代碼

以下是一個簡單的html大海日出特效的代碼:1. 使用html和css定義了一個大海和太陽的基本樣式;2. 使用animation讓太陽從初始位置向上升起,並且設置好其動畫屬性;3. 設置大海背景漸變和水面的動畫效果。…

學習html網頁制作模板代碼怎麼寫

學習html網頁制作模板代碼怎麼寫

HTML網頁制作模板代碼是用來定義網頁結構、內容和樣式的基礎代碼。以下是一個簡單的HTML網頁制作模板代碼的示例。通過這個模板代碼,你可以定義一個基本的網頁結構,以及樣式和導航等元素,讓你的網頁更加美觀和易於導航。通過這個適應式的模板代碼,你的網頁能夠在不同設備的屏幕上具有更好的用戶體驗,適應不同的…

html5自學教程步驟及代碼例子

html5自學教程步驟及代碼例子

HTML5是最新的HTML標準,具有更多的功能和特性,讓網頁的制作更加靈活和多樣化。以下是HTML5自學教程的一些步驟:1. 學習HTML基礎知識。在深入學習HTML5之前,你需要先學習HTML的基礎知識,包括HTML文件結構、標簽、屬性和元素等。2. 熟悉HTML5的新特性。HTML5相比於之前的…

類的三種訪問權限代碼例子

類的三種訪問權限代碼例子

在大多數的面向對象編程語言中,類的訪問權限通常分為以下三種:1. Public(公有) Public指的是類的成員對所有其他的類和對象都是可見的,可以被其他類和對象隨意調用。這種訪問權限最為開放,常用於表示類的主要功能或核心業務。2. Protected(保護) Protecte…