Sie diese mit den Funktionen tun können HANKEL und FLIPUD:
a = flipud(hankel(1:4,4:7));
Oder mit den Funktionen TOEPLITZ und FLIPLR:
a = toeplitz(fliplr(1:4),4:7);
a = toeplitz(4:-1:1,4:7); %# Without fliplr
Sie auch diese Lösungen für eine verallgemeinern könnte beliebiger Vektor, wo Sie den Mittelpunkt gewählt haben, an dem der Vektor gebrochen werden soll. Zum Beispiel:
>> vec = [6 3 45 1 1 2]; %# A sample vector
>> centerIndex = 3;
>> a = flipud(hankel(vec(1:centerIndex),vec(centerIndex:end)))
a =
45 1 1 2
3 45 1 1
6 3 45 1
Das obige Beispiel stellt die ersten drei Elemente des Vektors bis auf die erste Spalte ausgeführt wird und die letzten vier Elemente des Vektors entlang der ersten Reihe ausgeführt wird.