2013-11-14 13 views
6

मैं पाइथन/numpy के लिए नया हूँ और मुझे यादृच्छिक संख्या के matrices युक्त एक सरणी बनाने की जरूरत है।यादृच्छिक matrices की नकली सरणी

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

कौन सा पीएचपी डेवलपर के रूप में मेरे लिए कोई मतलब लेकिन अजगर के लिए काम नहीं कर रहा:

मैं अब तक क्या मिल गया है यह है। तो मैं इस matrices/सरणी रखने के लिए एक 3 आयामी सरणी कैसे बना सकता हूँ?

+0

यह लूप, PHP में भी, एक त्रि-आयामी सरणी कैसे बनाएगा? 'एसपीएन' क्या है? एक खाली सूची? यदि ऐसा है, तो PHP पर इंडेक्स के बिना 'SPN.append (np.random ....) ' –

+0

SPN [] आज़माएं। मैंने एसपीएन परिभाषित नहीं किया है लेकिन यह एक सरणी –

उत्तर

16

दोनों np.random.randint और np.random.uniform, np.random कार्यों का सबसे अधिक पसंद है, एक 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 और उसके बाद के बीच मूल्यों की एक सरणी चयन करते हैं। मुझे लगता है कि वास्तव में वह नहीं था जिसे आप करने की कोशिश कर रहे थे, क्योंकि यह थोड़ा असामान्य है; कृपया टिप्पणी करें कि है जो आप वास्तव में चाहते थे।

+0

होना चाहिए आप मेरे दिमाग को पढ़ते हैं और मुझे एक अच्छा समाधान प्रदान करते हैं, धन्यवाद। –

संबंधित मुद्दे