In MatLab habe ich zwei Matrizen (Matrizen können in der Größe variieren). Ich möchte Spalten von B greifen und ihnen jeden n-ten Spalte in A.Matlab: Interleave Proben nach Spalte
Hier ist ein kleines Beispiel einfügen:
Fall I
Annahmen für diesen Fall:
Spalten sind ein Vielfaches von 2 und Zeilen sind die gleichen für A und B
A =
1 2 3 4
5 6 7 8
B =
1 2
3 4
Ich möchte diese
bekommenc =
1 2 1 3 4 2
5 6 3 7 8 4
Der Code auch für einen anderen Fall wie funktionieren sollte:
Fall II
Annahmen für diesen Fall:
Spalten sind ein Vielfaches von 3 und die Zeilen sind die gleichen für A und B
A =
123456789
123456789
B =
123456
123456
C =
12312 45634 78956
12312 45634 78956
Ich weiß, MatLab hat eine Umform- und Permutierfunktion, aber ich konnte nicht die richtigen Ergebnisse erzielen. Ich weiß, dass ich eine for-Schleife verwenden könnte, oder manuelles concat durch Indizierung, aber dachte, dass die Verwendung dieser Funktionen eine bessere Leistung haben würde. Jede hep wäre großartig.
Gibt es ein bestimmtes Muster für die Umformung? – zhqiat
Ich möchte Spalten von B greifen und sie jede n-te Spalte in A einfügen. – wwjdm
Sind wir garantiert immer genug Werte, um das neue Array (und nicht mehr) zu füllen? Was wäre, wenn "B" im zweiten Beispiel nur 3 Spalten hätte? Wie würde das Ergebnis aussehen? Was wäre, wenn "B" 12 Spalten hätte? – beaker