Bonjour,
Voilà j'ai juste une question toute simple mais je ne sais pas comment faire :
J'ai un vecteur [0,360]. Je veux lui assigner un pas 0:pas:360 puis pour un nombre réel donné, je veux trouver l'index correspondant à sa valeur la plus proche dans le vecteur.
Exemple :
index 1 2 3 4 5 ... 37
vec 0 10 20 30 40 ... 360
Par exemple pour 23.6, index -> 3.
J'ai essayé de trouver une formule simple entre autre, pour un réel d :
1 2
| ratio = (nvec-1) /(vec(nvec)-vec(1))
index = round(ratio*(d-vec(1)+1)) |
Mais ça ne marche pas ma formule doit être fausse (par exemple d=23,6).
En attendant pour une valeur d pour trouver son index je fais find(min(abs(vec-d))) mais une formule mathématique serait plus rapide dans mes boucles.
Je vous remercie.
Partager