Changing elements of an array by row and column using for loop?
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Harvey Rael
am 3 Aug. 2018
Kommentiert: Harvey Rael
am 3 Aug. 2018
Hi all,
So essentially I am trying to correct some acos mistakes in an 180x40 array. I want to run through each element of the array first by rows then by columns, but I am having trouble with error messages. I keep getting "Index in position 2 exceeds array bounds (must not exceed 1)."
My array of angles look like this.
psi_deg = 180x40;
alpha = diff(psi_deg)
for i = 1:length(alpha)
for j = 1:size(alpha)
if alpha(i,j)<0
transform_angle(i,j) = 360 - psi_deg %If the angle should be greater than 180 but it is displayed as less, display the greater version
else transform_angle(i,j) = psi_deg(i,j)
end
end
end
Any thoughts why I continually get this error? Best, Harvey
0 Kommentare
Akzeptierte Antwort
James Tursa
am 3 Aug. 2018
You should probably be using size(alpha,1) and size(alpha,2) instead of length(alpha) and size(alpha) in your looping. And you need to index psi_deg. That being said, it is hard to advise if what you are doing makes sense without knowing your goal.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!