How to extract the most similar(closest) one

1 vue (au cours des 30 derniers jours)
Mekala balaji
Mekala balaji le 28 Août 2017
Réponse apportée : Stephen23 le 28 Août 2017
Hi,
I have below matrix:
InputMatrix:
1.0 2.2 3.1 4.0
1.1 3.3 4.7 6.2
2.2 4.9 5.3 6.2
1.1 2.3 2.8 3.9
Now I have the new one
Newdata:
1.2 2.2 3.4 4.5
I want to extract most similar row in InputMatrix to New data,

Réponse acceptée

Stephen23
Stephen23 le 28 Août 2017
To obtain the closest row without requiring a tolerance value:
M = [1.0,2.2,3.1,4.0;1.1,3.3,4.7,6.2;2.2,4.9,5.3,6.2;1.1,2.3,2.8,3.9];
V = [1.2,2.2,3.4,4.5];
[~,idx] = min(sum(bsxfun(@minus,M,V).^2,2));
M(idx,:)

Plus de réponses (1)

KSSV
KSSV le 28 Août 2017
Modifié(e) : KSSV le 28 Août 2017
Read about ismembertol ....
A = [1.0 2.2 3.1 4.0
1.1 3.3 4.7 6.2
2.2 4.9 5.3 6.2
1.1 2.3 2.8 3.9] ;
B = [1.2 2.2 3.4 4.5] ;
idx = ismembertol(A, B, 0.1, 'ByRows', true)

Catégories

En savoir plus sur Image Data Workflows dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by