簡體   English   中英

Numpy隨機矩陣數組

[英]Numpy array of random matrices

我是python / numpy的新手,我需要創建一個包含隨機數矩陣的數組。

到目前為止我得到的是:

for i in xrange(samples):
    SPN[] = np.random.random((6,5)) * np.random.randint(0,100)

這對我作為PHP開發人員有意義,但不適用於python。 那么如何創建一個包含這個矩陣/數組的三維數組呢?

像大多數np.random函數一樣, np.random.randintnp.random.uniform都接受一個size參數,所以在numpy我們只需要一步完成:

>>> SPN = np.random.randint(0, 100, (3, 6, 5))
>>> SPN
array([[[45, 95, 56, 78, 90],
        [87, 68, 24, 62, 12],
        [11, 26, 75, 57, 12],
        [95, 87, 47, 69, 90],
        [58, 24, 49, 62, 85],
        [38,  5, 57, 63, 16]],

       [[61, 67, 73, 23, 34],
        [41,  3, 69, 79, 48],
        [22, 40, 22, 18, 41],
        [86, 23, 58, 38, 69],
        [98, 60, 70, 71,  3],
        [44,  8, 33, 86, 66]],

       [[62, 45, 56, 80, 22],
        [27, 95, 55, 87, 22],
        [42, 17, 48, 96, 65],
        [36, 64,  1, 85, 31],
        [10, 13, 15,  7, 92],
        [27, 74, 31, 91, 60]]])
>>> SPN.shape
(3, 6, 5)
>>> SPN[0].shape
(6, 5)

..實際上,看起來你可能想要np.random.uniform(0, 100, (samples, 6, 5)) ,因為你希望元素是浮點數,而不是整數。 嗯,它的工作方式相同。 :^)


請注意,您所做的並不等同於np.random.uniform ,因為您選擇的值介於0和1之間,然后將所有值乘以固定的整數。 我假設那不是你想要做的事情,因為它有點不尋常; 請評論,如果這你真正想要的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM