X-Git-Url: http://iramuteq.org/git?a=blobdiff_plain;f=Rscripts%2Fdistance-labbe.R;h=3d7c296335b284aa3121a32b73fe414317e1f863;hb=eaa044d1147e26b82942ce56d5965c83fdddf069;hp=3ca73fe7643abdebaad200d3db4fb73f8af7327a;hpb=e5d8b8e44a92885b2efee3dc748239d773146830;p=iramuteq diff --git a/Rscripts/distance-labbe.R b/Rscripts/distance-labbe.R index 3ca73fe..3d7c296 100644 --- a/Rscripts/distance-labbe.R +++ b/Rscripts/distance-labbe.R @@ -1,5 +1,5 @@ #Author: Pierre Ratinaud -#Copyright (c) 2015-2016 Pierre Ratinaud +#Copyright (c) 2008-2020 Pierre Ratinaud #License: GNU/GPL #Distance de Labbe @@ -23,11 +23,14 @@ compute.labbe <- function(x, y, tab) { if (plus.grand == 1) { U <- N2/N1 mini.tab[,1] <- mini.tab[,1] * U + col.plusgrand <- mini.tab[,1] + cs.plus.grand <- sum(col.plusgrand[col.plusgrand>=1]) } else { U <- N1/N2 mini.tab[,2] <- mini.tab[,2] * U + col.plusgrand <- mini.tab[,2] + cs.plus.grand <- sum(col.plusgrand[col.plusgrand>1]) } - commun <- which((mini.tab[,1] > 0) & (mini.tab[,2] > 0)) deA <- which((mini.tab[,plus.petit] > 0) & (mini.tab[,plus.grand] == 0)) deB <- which((mini.tab[,plus.petit] == 0) & (mini.tab[,plus.grand] >= 1)) @@ -37,7 +40,7 @@ compute.labbe <- function(x, y, tab) { dist.deB <- abs(mini.tab[deB, plus.petit] - mini.tab[deB, plus.grand]) dist.labbe <- sum(dist.commun) + sum(dist.deA) + sum(dist.deB) - indice.labbe <- dist.labbe/(cs[plus.petit] + sum(mini.tab[,plus.grand])) + indice.labbe <- dist.labbe/(cs[plus.petit] + cs.plus.grand) indice.labbe }