Bonjour,
la formule de la fonction Canberra est : sum(|x_i - y_i| / |x_i + y_i|)
Si on a x_i=0 et y_i=0, la fonction dist donne une distance égale à 1..., mais je souhaiterai obtenir une distance égale à 0.
Par exemple si on tape :
dist(rbind(c(0,0,1,0),c(0,0,0,0)),method="canberra")
j'obtiens la une distance égale à 4.
Je souhaite modifier le script de cette distance pour obtenir une distance égale à 1.
Le problème est que si l'on tape dist dans la console, on obtient le script de la fonction, mais là ça devient compliqué et je ne trouve pas comment accéder aux formules des distances...?
Est-ce que quelqu'un sait?
Merci d'avance!
PS : je pourrai évidemment écrire une fonction directement, mais je travaille sur des matrices de distances volumineuses et le temps de calcul devient alors trop important, je pense que la fonction dist fait appel à un sous programme en C, mais je ne suis pas sur...