set matrix m x n
이전 댓글 표시
I am trying to create a matrix of 200 (rows by 6 (columns). I input by variable, but get a single row with all variable in multiple columns. The objective is to get the max of each row from the 6 columns. Can someone help me out?
h=height(PFset);
for x=1:height(PFset)
A= [XfmrpfCH XfmrpfCT XfmrpfCL XfmrpfCHLUST XfmrpfCHTUST XfmrpfCLTUST];
end
댓글 수: 2
Rik
2017년 12월 1일
What are the sizes of the vectors you want to concatenate? Once you have the matrix, just look up the documentation for the max function. You can specify a dimension for it to operate on.
Faustino Quintanilla
2017년 12월 2일
답변 (1개)
Jan
2017년 12월 2일
The body of the loop does not depend on the loop counter:
for x = 1:height(PFset)
A = [XfmrpfCH XfmrpfCT XfmrpfCL XfmrpfCHLUST XfmrpfCHTUST XfmrpfCLTUST];
end
This is equivalent to:
A = [XfmrpfCH XfmrpfCT XfmrpfCL XfmrpfCHLUST XfmrpfCHTUST XfmrpfCLTUST];
without any loop.
The currently provided information are not enough to guess, what you want instead. Please edit the question and add more details.
댓글 수: 5
Faustino Quintanilla
2017년 12월 2일
Jan
2017년 12월 2일
@Faustino: I'm sure the notation is trivial for you, but for me as a reader, who does not have the faintest idea about what you are doing, this is unclear:
fmrpfCH, XfmrpfCT, XfmrpfCL, XfmrpfCHLUST, XfmrpfCHTUST, XfmrpfCLTUST; max
Neither the cryptic names of the variables nor the explanations sheds light on what you want to achieve.
As said already: Your loop is meaningless. As long as you do not explain its intention, I cannot suggest a solution. Maybe:
If the mentioned variables are column vectors, perhaps you want:
A = [XfmrpfCH, XfmrpfCT, XfmrpfCL, XfmrpfCHLUST, ...
XfmrpfCHTUST, XfmrpfCLTUST];
Amax = max(A, 2)
Faustino Quintanilla
2017년 12월 2일
Rik
2017년 12월 2일
A = [XfmrpfCH', XfmrpfCT', XfmrpfCL', XfmrpfCHLUST', ...
XfmrpfCHTUST', XfmrpfCLTUST'];
Amax = max(A, 2)
Jan
2017년 12월 2일
The reason for loop is to generate multiple row of the six variables.
But this loop does not do this. It creates the same matrix repeatedly, such that it is a waste of time only. Do you understand this?
Currently, I have 200 entries with each variable in separate lists.
Faustino, what are "lists"? Please stay at the standard terms. The question would have been much clearer than. Are "XfmrpfCH" and the other variables [1 x 200] vectors? Then you want either:
A = [XfmrpfCH', XfmrpfCT', XfmrpfCL', XfmrpfCHLUST', ...
XfmrpfCHTUST', XfmrpfCLTUST']
or
A = [XfmrpfCH; XfmrpfCT; XfmrpfCL; XfmrpfCHLUST; ...
XfmrpfCHTUST; XfmrpfCLTUST]
Now either max(A, [], 1) or max(A, [], 2) will find the maximum value in each column or row.
카테고리
도움말 센터 및 File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!