How to calculate the distance between one row vector and a matrix??...
1 回表示 (過去 30 日間)
古いコメントを表示
I need to calculate the distance between a one row vector a and a matrix i.e.
test_point = [ 1.2 0.6 3.1 1.3]
train_data = [7.7 2.8 6.7 2.3;
5.2 2.5 3.0 1.1;
2.0 6.5 8.6 9.8;
1.3 2.4 5.2 3.6;
4 3 5 4 2 6 7 6]
I have to find the distance of test_point with every row of train_data.... how can I do that??.. I have tried the MATLAB functions pdist2() and dist() and many other etc but they required two matrices of the same dimension...
plzz tell how to write the function to calculate the distance??...
0 件のコメント
回答 (2 件)
Andrei Bobrov
2012 年 12 月 14 日
編集済み: Andrei Bobrov
2012 年 12 月 14 日
[edit]
a = bsxfun(@minus,train_data,test_point);
out = cellfun(@norm,num2cell(a,2));
5 件のコメント
Walter Roberson
2012 年 12 月 14 日
Have you considered a "for" loop ?
2 件のコメント
Walter Roberson
2012 年 12 月 14 日
Using one of the library functions to calculate row by row is fine.
参考
カテゴリ
Help Center および File Exchange で Statistics and Machine Learning Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!