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 visualización (últimos 30 días)
filename='realtimevalues.xlsx';
num=xlsread(filename);
y=filename(1,:);
[val idx]=max(y(:))

Respuesta aceptada

Image Analyst
Image Analyst el 17 de Feb. de 2016
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.

Más respuestas (1)

Titus Edelhofer
Titus Edelhofer el 17 de Feb. de 2016
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
  1 comentario
shina mokhtari
shina mokhtari el 17 de Feb. de 2016
you know i think the problem is i have 1000 values,and it show the wrong value and also index,for example when i write this code it show value 120 and index 16 wich is not true

Iniciar sesión para comentar.

Categorías

Más información sobre Logical en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by