मैं एक MATLAB समारोह फ़ाइल Exchange साइट (Interleave Vectors or Matrices) करता है कि वास्तव में क्या आप और अधिक चाहते हैं पर है कि लिखा था। बस .m फ़ाइल डाउनलोड करें और फ़ाइल को अपनी अन्य .m फ़ाइलों के समान निर्देशिका में रखें, या फ़ंक्शन को अपने प्रोग्राम में कॉपी और पेस्ट करें।
यह फ़ंक्शन पंक्ति या स्तंभ द्वारा किसी भी संख्या में वैक्टर या मैट्रिस को अंतःस्थापित करता है। यदि इनपुट केवल वैक्टर हैं, तो अभिविन्यास निर्दिष्ट करने की कोई आवश्यकता नहीं है। आउटपुट मैट्रिक्स के अंत में अतिरिक्त तत्व/पंक्तियां/स्तंभ जोड़े गए हैं। प्रदान किए गए अन्य उत्तर बराबर लंबाई के वैक्टरों के लिए बहुत विशिष्ट हैं या यह सुनिश्चित करने की आवश्यकता है कि वैक्टरों का अभिविन्यास सही है।
1) मैट्रिक्स
A = [1 2; 3 4] B = [5 6;7 8]
C = interleave2(A, B, 'row')
C = [1 2
5 6
3 4
7 8]
2 की इंटरलिविंग पंक्तियाँ) मैट्रिक्स
C = interleave2(A, B, 'col')
C = [1 5 2 6
3 7 4 8]
3) वैक्टर इंटरलिविंग (नोट के स्तंभों इंटरलिविंग:
कैसे समारोह का उपयोग करने के के उदाहरण इनपुट वैक्टरों को समान अभिविन्यास की आवश्यकता नहीं होती है)
A = [1 2 3 4] B = [5 6 7 8 9]'
C = interleave2(A, B)
C = [1 5 2 6 3 7 4 8 9]'
4) Interleaving> 2 मैट्रिक्स
A = [1 2;3 4] B = [5 6;7 8]
C = [9 10;11 12] D = [13 14;15 16]
E = interleave2(A, B, C, D, 'col')
E = [1 5 9 13 2 6 10 14
3 7 11 15 4 8 12 16]
5) असमान कॉलम
A = [1 2;3 4]
B = [5 6 7 8;9 10 11 12]
C = interleave2(A, B, 'col')
C = [1 5 2 6 7 8
3 9 4 10 11 12]
6) Interleaving> असमान लंबाई की 2 वैक्टर
A = [1 2 3 4] B = [5 6 7]
C = [8 9 10 11 12 13]
D = interleave2(A, B, C)
D = [1 5 8 2 6 9 3 7 10 4 11 12 13]
यह एक पंक्ति वेक्टर की गारंटी के लिए, आप' nums (:) '' – Jonas
' reshape' समाधान बहुत ही सुरुचिपूर्ण है! – Anael