# Help needed with the find function

1 visualizzazione (ultimi 30 giorni)
Aftab Ahmed Khan il 14 Lug 2016
Commentato: Aftab Ahmed Khan il 14 Lug 2016
Hello everyone, I have this section of code. I want to find the closest node among the two sets of base stations. The way i am doing it is like this but the find function gives me an error.
closest_dist=min(distance_ua(iduser,:),distance_ur(iduser,:));
closest_node=(find(distance_ua(iduser,:)==closest_dist)) || (find(distance_ur(iduser,:)==closest_dist));
##### 2 CommentiMostra NessunoNascondi Nessuno
Geoff Hayes il 14 Lug 2016
Aftab - wouldn't the closes to the ABS or RBS be the minimum of closest_abs and closest_rbs or am I misunderstanding something?
Aftab Ahmed Khan il 14 Lug 2016
Hi Geoff, I just amended the question to explain it more properly.

Accedi per commentare.

### Risposta accettata

Guillaume il 14 Lug 2016
Modificato: Guillaume il 14 Lug 2016
Note that using
indices = find(x == min(x))
only makes sense if you have several values equal to the minimum and you want to get the indices of all these values. Otherwise,
[~, index] = min(x)
is a more efficient way of getting the index of the first minimum.
Assuming, that the number of columns in distance_ua and distance_ur is the same and that the indices in distance_ua and distance_ub mean the same, then:
d_ua_ur = [distance_ua(iduser, :), distance_ur(iduser, :)];
closest_abs_or_rbs = mod(find(d_ua_ur == min(d_ua_ur)) - 1, size(distance_ua, 2)) + 1
edit: missing closing bracket
##### 4 CommentiMostra 2 commenti meno recentiNascondi 2 commenti meno recenti
Aftab Ahmed Khan il 14 Lug 2016
I noticed that earlier but still it gives the same error.
Aftab Ahmed Khan il 14 Lug 2016
Done, thanx.

Accedi per commentare.

### Categorie

Scopri di più su Logical in Help Center e File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by