Jak opravit chybu „Index matice je mimo rozsah pro smazání“ v MATLABu

Jak Opravit Chybu Index Matice Je Mimo Rozsah Pro Smazani V Matlabu



MATLAB je přínosný vysoce výkonný nástroj a základním účelem jeho vývoje bylo efektivní provádění maticových operací. Jednou z takových maticových operací je odstranění podmatice z matrice; které lze provést přiřazením počtu řádků a sloupců dané matice do hranatých závorek []. Při provádění této operace se uživatelé MATLABu potýkají s chybou „ Maticový index je mimo rozsah pro smazání “.

Pokud na takovou chybu narazíte při práci v MATLABu, postupujte podle tohoto průvodce a zjistěte, jak ji opravit.

Proč se nám v MATLABu zobrazuje chyba „Index matice je mimo rozsah pro smazání“.

Kdykoli jsme povinni odstranit podmatici z dané matice nebo určitý počet řádků či sloupců dané matice, nejprve přistoupíme k prvkům matice, které chceme odstranit, pomocí indexování matice a poté je přiřadíme [ ] operátor . Pokud však zadáme číslo řádku nebo číslo sloupce, které je větší než hranice indexu matice, dostaneme chybu „ Maticový index je mimo rozsah pro smazání “.







Jak opravit chybu „Index matice je mimo rozsah pro smazání“ v MATLABu

Jak jsme diskutovali dříve, chyba „ Maticový index je mimo rozsah pro smazání ” došlo kvůli smazání řádku nebo sloupce, který neleží v zadané matici. Tuto chybu lze tedy opravit smazáním řádku nebo sloupce dané matice, který musí ležet v zadané matici. Nyní nejprve vygenerujeme chybu „ Maticový index je mimo rozsah pro smazání “ a poté jej opravte v uvedených příkladech.



Příklad 1: Jak opravit „index matice je mimo rozsah pro smazání“ při mazání řádků matice v MATLABu?

Níže uvedený kód MATLABu vytváří čtvercovou matici s 10 řádky a 10 sloupci. Poté inicializuje proměnnou i tak, že jí přiřadí hodnotu 5. Nyní vymaže podmatici z dané matice uvedením čísel řádků jako výrazu. Když tento výraz vyhodnotíme pro zadanou hodnotu proměnné i, která je 5, dostaneme číslo řádku 12. Operátor dvojtečka (:) znamená, že chceme smazat všechny sloupce zadaného čísla řádku. Protože však matice má pouze 10 řádků, řádek číslo 12 je mimo rozsah, což má za následek chybovou zprávu „ Maticový index je mimo rozsah pro smazání “.



A = magie ( 10 )
i = 5 ;
A ( ( i * 3 ) - 3 ,: ) = [ ]





Nyní můžeme tuto chybu opravit uvedením čísla řádku, který leží v matici.

A = magie ( 10 )
i = 10 ;
A ( 1 :i- 3 ,: ) = [ ]

Ve výše uvedeném kódu vymažeme prvních 7 řádků dané matice A.



Příklad 2: Jak opravit „index matice je mimo rozsah pro smazání“ při mazání podmatice z dané matice v MATLABu?

V tomto příkladu vytvoříme čtvercovou matici s 10 řádky a 10 sloupci. Poté inicializujeme proměnnou i tak, že jí přiřadíme hodnotu 5. Nyní odstraníme podmatici z dané matice uvedením čísel sloupců jako výrazu. Když tento výraz vyhodnotíme pro zadanou hodnotu proměnné i, která je 5, dostaneme čísla sloupců od 7 do 15. Matice má počet sloupců 10, ale výsledný rozsah čísel sloupců je od 7 do 15, což nelže. v dané matici, tak dostaneme chybu „Matriční index je mimo rozsah pro smazání“ .

A = magie ( 10 )
i = 5 ;
A ( :, 7 :i * 3 ) = [ ]

Nyní můžeme tuto chybu opravit uvedením rozsahu sloupců, který leží v matici.

A = magie ( 10 )
i = 5 ;
A ( :, 7 :i * 2 ) = [ ]

Ve výše uvedeném kódu vymažeme poslední 4 sloupce dané matice A.

Závěr

Při provádění různých maticových operací v MATLABu dochází k chybám způsobeným technickými chybami. Jedna taková chyba je „ Maticový index je mimo rozsah pro smazání “, ke kterému dochází v důsledku smazání nespecifikovaného počtu řádků a sloupců z dané matice. Tuto chybu lze opravit odstraněním řádků nebo sloupců, které musí ležet v dané matici. Tato příručka obsahuje příklady generování chyb a řešení, jak je opravit. Pokud jim porozumíte, pomůže vám to vyřešit vaše problémy v případě, že k takové chybě ve vašem případě dojde.