how to find max of 1000 values which are rows,i wrote a code it showed just one value and index that is not the max
1 次查看(过去 30 天)
显示 更早的评论
filename='realtimevalues.xlsx';
num=xlsread(filename);
y=filename(1,:);
[val idx]=max(y(:))
0 个评论
采纳的回答
Image Analyst
2016-2-17
num is a 2D array of numbers, or it may be depending on how your data area arranged in the workbook. y is the first character of filename, which is 'r'. I think you want
y = num(1, :); % Extract first row only.
2 个评论
Titus Edelhofer
2016-2-17
Hmm, in the original post it's
y = filename(1,:)
?
y=num(:)
or
y=num(1,:)
both should give reasonable results, depending of what is searched for ...
更多回答(1 个)
Titus Edelhofer
2016-2-17
Hi Shina,
what exactly is the question: you think val is not the maximum of y? I don't see how this can happen ... Or are you interested in all indices where y is taking it's maximum? In this case you could do something like
idx = find(y(:)==max(y(:)));
Note though, that this is sensitive to floating point accuracy, so if you have
y = [1 1.0000000001 1]
this would find only idx=2.
Titus
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Startup and Shutdown 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!