How to find the closest value to the average in an array?
Ältere Kommentare anzeigen
I get a different one dimentional array for different inputs. Now, I want to take the average value of the array, and find the value that is closest to it.
For example if the array output is like this:
a = [1,2,3,4,5,6,7]
Then average will be 4.14, which is closest to 4.
So, the answer should be 4.
How can I do it?
Akzeptierte Antwort
Weitere Antworten (2)
a = [1,2,3,4,5,6,7] ;
idx = knnsearch(a',mean(a)) ;
a(idx)
Then average will be 4.14, which is closest to 4.
actually average is 4. you can try this:
a=[1,2,3,4,6,6];
average=mean(a)
[~,~,idx]=unique(round(abs(a-average)));
nearest_value=a(idx==1)
Kategorien
Mehr zu Whos finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!