How to pick next value from vectors?
Mostra commenti meno recenti
I have a cumulative vector, size is about 200. I want to pick up that index where value is 0,5 or value which is next to it. For example (0.1, 0.23, 0.42, 0.49, 0.52, 0.56,...), so i want to pick up index which corresponding to value 0.52. How can I do it?
Risposta accettata
Più risposte (2)
Jos (10584)
il 5 Mar 2013
1 voto
To do this for multiple values, take a look at my function NEARESTPOINT:
v = [0.1 0.23 0.4 0.52 0.56 1.1];
[absdist, nearest] = min(abs(v - 0.5)); % **SOLUTION IS HERE** !!!
if absdist == 0 % or: <= eps(v(index))
following = index;
else
following = index + 1;
end
nearestValue = value(nearest);
followingValue = value(following);
2 Commenti
shariq khan
il 3 Dic 2018
what if I need next larger value? consider same data but my value at specific index is nil (or no value from dataset) but now I want to find if there is any value next to that specific value in the dataset
shariq khan
il 3 Dic 2018
Modificato: shariq khan
il 3 Dic 2018
I think I found answer to my problem
Problem - all vectors are of same length
x = [some values]
t = [some values]
x1 = 0.9*max(x);
find t value that corresponds to x1 value
if not find the closest value
solution : A lot from @jan ans
[answer,index] = min(abs(x - x1))
t1(that is to be determined) = t(index);
I hope it helps to solve people facing specific problem
Categorie
Scopri di più su Matrix Indexing in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!