Chi-square distance formula

Considering I'm using euclidean distance to calculate the distance between two vector.
cosined=sqrt(sum(abs((a-b).^2)))
Now I want to change euclidean into chi-square distance, does anyone know how to calculate chi-square distance between two vectors?

Réponses (1)

the cyclist
the cyclist le 18 Sep 2015

0 votes

I found this page after googling for about 30 seconds: http://www.cs.columbia.edu/~mmerler/project/code/pdist2.m

6 commentaires

Js Goh
Js Goh le 18 Sep 2015
i found this too but I don't know how to modify it w/o the loop.
Sry I'm too new to matlab, still learning.
Manolis Michailidis
Manolis Michailidis le 18 Sep 2015
i recommend you first use it as it is with thhe loop to see if you get the expected results
Js Goh
Js Goh le 18 Sep 2015
I tried, it doesn't come out with the expected results.
I don't understand what you about the loop. I just put that function in a directory, then did
pdist2([1 2 3],[4 5 6],'chisq')
and got a result. What more do you need?
AJAY KUMAR SAHU
AJAY KUMAR SAHU le 31 Mai 2019
Hey, It doesn't work!!
the cyclist
the cyclist le 31 Mai 2019
MATLAB has a built-in pdist2 function, which you are presumably calling (rather than the one from the link listed above). You have two options:
  • Download the function from the link above, and use it
  • Use the built-in MATLAB function, which has the ability to define a custom distance function, and code the chi-square distance yourself.

Connectez-vous pour commenter.

Question posée :

le 18 Sep 2015

Commenté :

le 31 Mai 2019

Community Treasure Hunt

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

Start Hunting!

Translated by