is there any way to use both Spearman and Euclidean distance using knnsearch ?

1 view (last 30 days)
in my programe I'm using them separatly as in the text below :
%% Distance effect
idx=knnsearch(subject_train,subject_test,'distance','Euclidean');
%idx=knnsearch(subject_train,subject_test,'distance','spearman');
I assume that there is a way to merge the two functions to get better results, I expect that one of them can compensate the bad results of the other one

Accepted Answer

the cyclist
the cyclist on 21 May 2019
No, they cannot both be used within a single call to knnsearch.
I don't really see how "merging" would really be that helpful. It seems to me that that would be effectively equivalent to defining some new, different distance metric. If one of the tried and tested distance functions doesn't really do a good job, I don't think a newfangled one will do much better.
You could, in principle, create your own version of knnsearch that does that merging, by copying the built-in function into your own directory, calculating both distances inside your new function, and somehow do the "merging" you have in mind.

More Answers (1)

zakaria debih
zakaria debih on 22 May 2019
thanks Sir, I'll try it manually then.
the next table will show why did I think about merging the functions ..it seemed a stupid idea but I have to test it to make sure.
New Bitmap Image.bmp
left column for Euclidean and the right for Spearman. I wanted to increase the recognition rate as much as possible.

Community Treasure Hunt

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

Start Hunting!