find maximum value indices
Show older comments
Im trying to find the indices number of the max of a certain function.
delcx(:,n) = (massch4(max(longm(dataind{n}))))
I want to find the massch4 at the location where longm is a max value. Can I do that in one line? Can I use the find function?
Thanks!
10 Comments
per isakson
on 10 Feb 2015
Edited: per isakson
on 10 Feb 2015
Why should we guess regarding massch4, longm and dataind? Please tell us about class, size and value. An example might be appropriate.
shobhit mehrotra
on 10 Feb 2015
per isakson
on 10 Feb 2015
Edited: per isakson
on 10 Feb 2015
- "Can I do that in one line?"   It's easier to break it up in small steps and confirm that it works correctly. Lastly, one may combine it into one line.
- "in an array"   cell array I assume
ixn = dataind{ n };
lgm = longm( ixn );
mxl = max( lgm );
ms4 = massch4( mxl );
mxl and ms4 will be scalars. Will lgm and mxl be whole number suitable as indicies? What did I miss?
shobhit mehrotra
on 10 Feb 2015
Edited: per isakson
on 10 Feb 2015
per isakson
on 10 Feb 2015
Edited: per isakson
on 10 Feb 2015
This looks strange! Why
ixn(n) = longm(dataind{ n });
rather than
ixn(n) = dataind{ n };
Isn't it time you
- start using the {}Code button and
- provide some sample data: input and required output
shobhit mehrotra
on 10 Feb 2015
Edited: per isakson
on 10 Feb 2015
per isakson
on 10 Feb 2015
Edited: per isakson
on 10 Feb 2015
Did you try it? Whether it will work or not depends on the input data. You might preallocate memory for indm.
indm = nan(1,20);
for n=1:20
indm(n) = find( longm == max(longm(dataind{n})) );
end
What happened to massch4?
shobhit mehrotra
on 10 Feb 2015
shobhit mehrotra
on 10 Feb 2015
per isakson
on 10 Feb 2015
Replace
find( longm == max(longm(dataind{n})) )
by
find( longm == max(longm(dataind{n})), 1, 'first' )
Answers (0)
Categories
Find more on MATLAB in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!