Ich habe X-und Y-Positionen für ein großes Array und ich möchte sie verwenden, um zu definieren, was der Inhalt dieser Position. Ich könnte eine for-Schleife ausführen, um die Positionen zu definieren, aber ich denke, dass es eine schnellere Methode geben würde. Ich habe versucht, die Array-Position definieren Funktion zu verwenden.Matlab-Matrix Indexierung von 2 Arrays (X, Y)
x = [6,2,3]
y = [1,2,3]
c = [1,1,1,2,2,3;...
1,1,1,2,2,5;...
2,2,1,4,2,3;...
1,1,4,3,2,3;...
1,2,3,4,5,3;...
1,2,3,5,4,2];
Wenn ich geben Sie die obige Gleichung es unter
c(y,x)
ans =
1 2 3
1 1 1
2 2 1
in der Antwort ergibt Was für sind ich suche die 1: 1-Positionen aus den Arrays.
c(y(1),x(1))
c(y(2),x(2))
c(y(3),x(3))
Gibt es eine Möglichkeit, die Arrays auf eine lineare Sequenz zu begrenzen? Meine einzige Vermutung ist jetzt, die Arrays in eine Zellenmatrix umzuwandeln, die die Individuen a und b enthält und dann einen cellfun durchführt. aber ich denke ich mache es zu kompliziert.
Verwenden Sie 'x' und' y' als lineare Indexierung, durch die Länge der Spalten- 'c (Größe (c, 1) * (x-1) + y)' – Adiel