Using a loop to calculate max values

22 views (last 30 days)
Jordan Rosales
Jordan Rosales on 31 Jan 2021
Commented: madhan ravi on 31 Jan 2021
For a homework problem I have a structure with one field which is a 40x12 table. For this problem I am asked to find the maximum values of each row and plot them vs the row number. I am assuming they do not want me to do this manually as it would take a long time to seperate and calculate the maximums for each row individually. I will also need to do the same for the row minimums. I was thinking of using a for loop but I cannot seem to figure out how to set it up.
What I was thinking:
for i=1:40
max(temp(i,:))
end
When doing this I get an error saying max is not appropriate the first argument must be numeric or logical.

Answers (2)

madhan ravi
madhan ravi on 31 Jan 2021
You were almost close.
plot(max(temp.temp, [], 2))

andre con
andre con on 31 Jan 2021
Hello Jordan,
I think that your variable "temp" has not been appropriately defined because your code is OK. Below, I have written a simple code using your idea, and it works well.
clc; clear all; close all;
A = [11 2 3;4 15 6;7 8 9]
for j=1:3
maxA_row(j) = max(A(:,j));
end
maxA_row
  1 Comment
madhan ravi
madhan ravi on 31 Jan 2021
maxA_row(j) = max(A(j, :)); % you have it the other way around

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by