MATLAB-Index übersteigt Matrix-Dimensionen
In diesem Tutorial werden wir diskutieren, wie das Problem gelöst werden kann, dass der Index die Matrixdimensionen in MATLAB überschreitet.
Index überschreitet Matrixdimensionen Problem in MATLAB
In MATLAB wird jedes Array oder Matrixelement in einem bestimmten Index gespeichert, der bei 1 beginnt und mit zunehmender Anzahl von Elementen in diesem Array oder dieser Matrix zunimmt. Um ein Element zu erhalten oder ein Element in einem Array oder einer Matrix zu ersetzen, verwenden wir den Index dieses Elements. Wenn ein Array zehn Elemente enthält, variiert der Indexbereich zwischen 1 und 10.
Wenn wir versuchen, ein Element mit einem Index ab 11 zu erhalten oder zu ersetzen, der nicht im Bereich der Indizes liegt, gibt MATLAB eine Fehlermeldung aus, dass der Index die Matrixdimensionen überschreitet. Stellen Sie daher sicher, dass Sie den Indexwert verwenden, der innerhalb des Indexbereichs liegt. Mit der Funktion size()
können Sie die Größe Ihres Arrays oder Ihrer Matrix überprüfen, bevor Sie einen Indexwert verwenden. Siehe zum Beispiel den folgenden Code.
myMatrix = [4 3 2 1]
myMatrix[5] = 10;
Im obigen Code speichern wir einen Wert von 10 beim Indexwert von 5 in der Matrix myMatrix
. Aber wie Sie sehen, beträgt die Anzahl der in der myMatrix
vorhandenen Indizes nur vier. Das heißt, wir erhalten einen Indexfehler, der die Matrixdimensionen überschreitet. Um dieses Problem zu lösen, müssen wir den Wert in einem Index innerhalb des Indexbereichs von 1 bis 4 speichern. Siehe den korrigierten Code unten.
myMatrix = [4 3 2 1]
myMatrix[4] = 10;
Im obigen Code speichern wir einen Wert von 10
beim Indexwert von 4
in der Matrix myMatrix
. Wie Sie sehen, liegt der Index innerhalb des Indexbereichs, sodass der Wert 1
in der Matrix myMatrix
durch den Wert 10
ersetzt wird.