Ako opraviť chybu „Index matice je mimo rozsahu na vymazanie“ v MATLAB

Ako Opravit Chybu Index Matice Je Mimo Rozsahu Na Vymazanie V Matlab



MATLAB je užitočný vysokovýkonný nástroj a základným účelom jeho vývoja bolo efektívne vykonávať maticové operácie. Jednou z takýchto maticových operácií je vymazanie podmatice z matrice; ktoré možno vykonať priradením počtu riadkov a stĺpcov danej matice do hranatých zátvoriek []. Pri vykonávaní tejto operácie používatelia MATLABu čelia chybe „ Maticový index je mimo rozsahu na vymazanie “.

Ak sa pri práci v MATLABE stretnete s takouto chybou, postupujte podľa tohto návodu a zistite, ako ju opraviť.

Prečo sa nám v MATLAB-e zobrazuje chyba „Index matice je mimo rozsahu na vymazanie“.

Kedykoľvek sa od nás vyžaduje vymazať podmaticu z danej matice alebo určitý počet riadkov alebo stĺpcov danej matice, najskôr pristúpime k prvkom matice, ktoré chceme vymazať, pomocou indexovania matice a potom ich priradíme k [ ] operátor . Ak však zadáme číslo riadka alebo číslo stĺpca, ktoré je väčšie ako hranica indexu matice, dostaneme chybu „ Maticový index je mimo rozsahu na vymazanie “.







Ako opraviť chybu „Index matice je mimo rozsahu na vymazanie“ v MATLAB

Ako sme už diskutovali, chyba „ Maticový index je mimo rozsahu na vymazanie ” došlo v dôsledku vymazania riadku alebo stĺpca, ktorý neleží v zadanej matici. Túto chybu je možné opraviť vymazaním riadku alebo stĺpca danej matice, ktorý musí ležať v zadanej matici. Teraz najskôr vygenerujeme chybu „ Maticový index je mimo rozsahu na vymazanie “ a potom ho opravte v uvedených príkladoch.



Príklad 1: Ako opraviť „index matice je mimo rozsahu na vymazanie“ pri odstraňovaní riadkov matice v MATLAB?

Nižšie uvedený kód MATLABu vytvára štvorcovú maticu s 10 riadkami a 10 stĺpcami. Potom inicializuje premennú i tak, že jej priradí hodnotu 5. Teraz vymaže z danej matice podmaticu tak, že ako výraz uvedie čísla riadkov. Keď tento výraz vyhodnotíme pre zadanú hodnotu premennej i, ktorá je 5, dostaneme riadok číslo 12. Operátor dvojbodka (:) označuje, že chceme vymazať všetky stĺpce zadaného čísla riadku. Keďže však matica má iba 10 riadkov, riadok číslo 12 je mimo rozsahu, čo vedie k chybovému hláseniu „ Maticový index je mimo rozsahu na vymazanie “.



A = mágia ( 10 )
i = 5 ;
A ( ( i * 3 ) - 3 ,: ) = [ ]





Teraz môžeme túto chybu opraviť uvedením čísla riadku, ktorý leží v matici.

A = mágia ( 10 )
i = 10 ;
A ( 1 :i- 3 ,: ) = [ ]

Vo vyššie uvedenom kóde vymažeme prvých 7 riadkov danej matice A.



Príklad 2: Ako opraviť „index matice je mimo rozsahu na vymazanie“ pri odstraňovaní podmatice z danej matice v MATLAbe?

V tomto príklade vytvoríme štvorcovú maticu s 10 riadkami a 10 stĺpcami. Potom inicializujeme premennú i tak, že jej priradíme hodnotu 5. Teraz z danej matice vymažeme podmaticu tak, že ako výraz uvedieme čísla stĺpcov. Keď tento výraz vyhodnotíme pre zadanú hodnotu premennej i, ktorá je 5, dostaneme čísla stĺpcov od 7 do 15. Matica má počet stĺpcov 10, ale výsledný rozsah čísel stĺpcov je od 7 do 15, čo neklame v danej matici, tak dostaneme chybu „Index matice je mimo rozsahu na vymazanie“ .

A = mágia ( 10 )
i = 5 ;
A ( :, 7 :i * 3 ) = [ ]

Teraz môžeme túto chybu opraviť uvedením rozsahu stĺpcov, ktorý leží v matici.

A = mágia ( 10 )
i = 5 ;
A ( :, 7 :i * 2 ) = [ ]

Vo vyššie uvedenom kóde vymažeme posledné 4 stĺpce danej matice A.

Záver

Pri vykonávaní rôznych maticových operácií v MATLABE dochádza k chybám v dôsledku technických chýb. Jednou z takýchto chýb je „ Maticový index je mimo rozsahu na vymazanie ” ku ktorému dochádza v dôsledku vymazania bližšie neurčeného počtu riadkov a stĺpcov z danej matice. Túto chybu je možné opraviť vymazaním riadkov alebo stĺpcov, ktoré musia ležať v danej matici. Táto príručka obsahuje príklady generovania chýb a riešenia na ich opravu. Ich pochopenie vám pomôže vyriešiť vaše problémy v prípade, že sa takáto chyba vyskytne vo vašom prípade.