से भरें मुझे लगता है कि मेरी समस्या वास्तव में सरल होनी चाहिए, फिर भी मुझे इंटरनेट पर कोई सहायता नहीं मिल रही है। मैं पाइथन के लिए बहुत नया हूं, इसलिए यह संभव है कि मुझे कुछ बहुत याद आ रही है।पायथन: मौजूदा सरणी का आकार बदलें और शून्य
मेरे पास एक सरणी है, एस, इस [x x x] (one-dimensional)
की तरह। अब मैं विकर्ण मैट्रिक्स, sigma
, np.diag(S)
के साथ - अब तक बहुत अच्छा बना रहा हूं। अब, मैं इस नए विकर्ण सरणी का आकार बदलना चाहता हूं ताकि मैं इसे किसी अन्य सरणी से गुणा कर सकूं जो मेरे पास है।
import numpy as np
...
shape = np.shape((6, 6)) #This will be some pre-determined size
sigma = np.diag(S) #diagonalise the matrix - this works
my_sigma = sigma.resize(shape) #Resize the matrix and fill with zeros - returns "None" - why?
हालांकि, जब मैं my_sigma
की सामग्री मुद्रित, मैं "None"
मिलता है। क्या कोई मुझे सही दिशा में इंगित कर सकता है, क्योंकि मैं कल्पना नहीं कर सकता कि यह इतना जटिल होना चाहिए।
किसी भी मदद के लिए अग्रिम धन्यवाद!
कैस्पर
ग्राफिकल: क्योंकि यह यथा-स्थान संचालित
[x 0 0]
[0 x 0]
[0 0 x]
[0 0 0]
[0 0 0]
[0 0 0] - or some similar size, but the diagonal elements are important.
क्या आप आकार(), diag() और आकार बदलना(), या पुस्तकालय से हैं जो आप उपयोग कर रहे हैं? – grieve
आकार बदलें() numpy लाइब्रेरी से है, मुझे यह निर्दिष्ट करना चाहिए था। – casper
यह numpy है, है ना? अगर मैं सही ढंग से समझ रहा हूं, सिग्मा में डेटा है, लेकिन आप सिग्मा को बड़ा बनाना चाहते हैं और नए तत्वों को शून्य-भरना चाहते हैं। क्या वो सही है? यदि आपको केवल एक नई शून्य-भरे सरणी की आवश्यकता है, तो 'numpy.zeros ((6,6)) ' – gfortune