दिलचस्प पोस्ट
MVVMCross एक MvxBindableListView के भीतर ViewModel बदल रहा है गेटर और सेटर? GLSurfaceView की बिटमैप पर स्क्रीन कैप्चर करें एक बैंक विवाद क्या है? (कुडा / ओपनसीएल प्रोग्रामिंग करना) हॉवर के साथ बूटस्ट्रैप ड्रॉपडाउन खींचें-और-गिराए गए फ़ाइल लोड करने से ब्राउज़र को रोकें एक छवि कॉलम में आप तस्वीर कैसे संग्रहीत करते हैं? संकलित करते समय -थथथ ध्वज का महत्व मैं एक संपत्ति को नजरअंदाज करने के लिए जैक्सन को कैसे बता सकता हूं जिसके लिए मुझे स्रोत कोड पर नियंत्रण नहीं है? इन-ब्राउज़र स्क्रीनशॉट लेने के लिए HTML5 / Canvas / JavaScript का उपयोग करना समय की तुलना तार की सूची से खाली तार निकालें पृष्ठों के बीच एक वेबसॉकेट कनेक्शन को कैसे बनाए रखा जाए? जावा 7 स्ट्रिंग – ऑर्पटिंग जटिलता रेल में सक्रिय रिकॉर्ड के लिए डिफ़ॉल्ट समयक्षेत्र कैसे बदल सकता है?

एक NumPy सरणी को एक NumPy सरणी में जोड़ें

मेरे पास एक numpy_array है [ abc ] तरह कुछ

और फिर मैं इसे एक और नम्पसी सरणी में जोड़ना चाहता हूं (जैसे कि हम सूचियों की सूची बनाते हैं)। हम NumPy arrays युक्त NumPy arrays की एक सरणी कैसे बना सकते हैं?

मैंने बिना कोई भाग्य के निम्नलिखित को करने की कोशिश की

 >>> M = np.array([]) >>> M array([], dtype=float64) >>> M.append(a,axis=0) Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'numpy.ndarray' object has no attribute 'append' >>> a array([1, 2, 3]) 

वेब के समाधान से एकत्रित समाधान "एक NumPy सरणी को एक NumPy सरणी में जोड़ें"

 In [1]: import numpy as np In [2]: a = np.array([[1, 2, 3], [4, 5, 6]]) In [3]: b = np.array([[9, 8, 7], [6, 5, 4]]) In [4]: np.concatenate((a, b)) Out[4]: array([[1, 2, 3], [4, 5, 6], [9, 8, 7], [6, 5, 4]]) 

या यह:

 In [1]: a = np.array([1, 2, 3]) In [2]: b = np.array([4, 5, 6]) In [3]: np.vstack((a, b)) Out[3]: array([[1, 2, 3], [4, 5, 6]]) 

ठीक है, त्रुटि संदेश यह सब कहते हैं: NumPy arrays के पास एक append() विधि नहीं है एक मुफ्त समारोह numpy.append() हालांकि है:

 numpy.append(M, a) 

यह जगह में M को उत्परिवर्तित करने के बजाय एक नई सरणी बना देगा। ध्यान दें कि numpy.append() का उपयोग करके दोनों सरणियों को कॉपी करना शामिल है यदि आप तय-आकार के NumPy arrays का उपयोग करते हैं तो आप बेहतर प्रदर्शन कोड प्राप्त करेंगे

स्वेन ने यह सब कहा, एपेंड कहा जाता है जब स्वचालित प्रकार समायोजन की वजह से बहुत सतर्क हो।

 In [2]: import numpy as np In [3]: a = np.array([1,2,3]) In [4]: b = np.array([1.,2.,3.]) In [5]: c = np.array(['a','b','c']) In [6]: np.append(a,b) Out[6]: array([ 1., 2., 3., 1., 2., 3.]) In [7]: a.dtype Out[7]: dtype('int64') In [8]: np.append(a,c) Out[8]: array(['1', '2', '3', 'a', 'b', 'c'], dtype='|S1') 

जैसा कि आप सामग्री के आधार पर देखते हैं, dtype int64 से float32, और उसके बाद S1 तक चला गया

आप numpy.append() उपयोग कर सकते हैं …

 import numpy B = numpy.array([3]) A = numpy.array([1, 2, 2]) B = numpy.append( B , A ) print B > [3 1 2 2] 

यह दो अलग-अलग एरेज़ नहीं बनाएगा, लेकिन दो सरणियों को एक आयामी सरणी में जोड़ देगा।

असल में कोई भी हमेशा एक numpy arrays की साधारण सूची बना सकता है और इसे बाद में परिवर्तित कर सकता है।

 In [1]: import numpy as np In [2]: a = np.array([[1,2],[3,4]]) In [3]: b = np.array([[1,2],[3,4]]) In [4]: l = [a] In [5]: l.append(b) In [6]: l = np.array(l) In [7]: l.shape Out[7]: (2, 2, 2) In [8]: l Out[8]: array([[[1, 2], [3, 4]], [[1, 2], [3, 4]]]) 

अगर मैं आपका प्रश्न समझता हूं, तो यह एक तरीका है। कहें कि आपके पास है:

 a = [4.1, 6.21, 1.0] 

तो यहाँ कुछ कोड है …

 def array_in_array(scalarlist): return [(x,) for x in scalarlist] 

जिससे होता है:

 In [72]: a = [4.1, 6.21, 1.0] In [73]: a Out[73]: [4.1, 6.21, 1.0] In [74]: def array_in_array(scalarlist): ....: return [(x,) for x in scalarlist] ....: In [75]: b = array_in_array(a) In [76]: b Out[76]: [(4.1,), (6.21,), (1.0,)]