How to extract the most similar(closest) one

조회 수: 1 (최근 30일)
Mekala balaji
Mekala balaji 2017년 8월 28일
답변: Stephen23 2017년 8월 28일
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,

채택된 답변

Stephen23
Stephen23 2017년 8월 28일
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,:)

추가 답변 (1개)

KSSV
KSSV 2017년 8월 28일
편집: KSSV 2017년 8월 28일
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)

카테고리

Help CenterFile Exchange에서 Image Data Workflows에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by