निम्नलिखित प्रश्न कल अपने कोर्स में आया के कॉलम:निकालें पंक्तियों/अलग चर में एक मैट्रिक्स
मान लीजिए मैं एक मैट्रिक्स M = rand(3, 10)
है कि एक गणना से बाहर आता है, जैसे एक ओडीई सॉल्वर।
अजगर में, आप
x, y, z = M
कर सकते हैं तीन चर, उदा में M
की पंक्तियों को निकालने के लिए matplotlib
साथ साजिश रचने के लिए।
जूलिया में हम कर सकते थे
M = M' # transpose
x = M[:, 1]
y = M[:, 2]
z = M[:, 3]
इस निष्कर्षण करने के लिए एक अच्छा तरीका है? यह कम से कम लिखने के लिए (अजगर आ)
x, y, z = columns(M)
या
सक्षम होने के लिए अच्छा होगाx, y, z = rows(M)
एक तरह से
columns(M) = [ M[:,i] for i in 1:size(M, 2) ]
होगा, लेकिन इस बात का एक महंगी प्रतिलिपि कर देगा सभी डेटा
इस हम एक नए इटरेटर प्रकार, ColumnIterator
, कि स्लाइस रिटर्न की आवश्यकता होगी से बचने के लिए? इस यह अच्छा सिंटेक्स के उपयोग के अलावा और कुछ के लिए उपयोगी हो सकते हैं?
क्यों नहीं 'कॉलम (एम) = [टुकड़ा (एम ,: , मैं) मैं में के लिए 1: आकार (एम, 2)] '? इस वाक्यविन्यास में क्या गलत है? [: 1 में मैं के लिए उप (, मैं एम,): आकार (एम, 2)]: –
नकल के बिना कॉलम (एम) = –
हां, यह काम करना चाहिए, धन्यवाद! - यकीन नहीं है कि मैंने इसके बारे में क्यों नहीं सोचा था। –