cailliez                package:ade4                R Documentation

_T_r_a_n_s_f_o_r_m_a_t_i_o_n _t_o _m_a_k_e _E_u_c_l_i_d_e_a_n _a _d_i_s_t_a_n_c_e _m_a_t_r_i_x

_D_e_s_c_r_i_p_t_i_o_n:

     This function computes the smallest positive constant that makes
     Euclidean a distance matrix and applies it.

_U_s_a_g_e:

     cailliez(distmat, print = FALSE)

_A_r_g_u_m_e_n_t_s:

 distmat: an object of class 'dist'

   print: if TRUE, prints the eigenvalues of the matrix

_V_a_l_u_e:

     an object of class 'dist' containing a Euclidean distance matrix.

_A_u_t_h_o_r(_s):

     Daniel Chessel chessel@biomserv.univ-lyon1.fr

_R_e_f_e_r_e_n_c_e_s:

     Cailliez, F. (1983) The analytical solution of the additive
     constant problem. _Psychometrika_, *48*, 305-310.

     Legendre, P. and Anderson, M.J. (1999) Distance-based redundancy
     analysis: testing multispecies responses in multifactorial
     ecological experiments. _Ecological Monographs_, *69*, 1-24.

     Legendre, P., and Legendre, L. (1998) _Numerical ecology_, 2nd
     English edition edition. Elsevier Science BV, Amsterdam.

     From the DistPCoa program of P. Legendre et M.J. Anderson
      <URL:
     http://www.fas.umontreal.ca/BIOL/Casgrain/en/labo/distpcoa.html>

_E_x_a_m_p_l_e_s:

     library(mva)
     data(capitales)
     d0 <- as.dist(capitales$df)
     is.euclid(d0) # FALSE
     d1 <- cailliez(d0, TRUE)
     # Cailliez constant = 2429.87867 
     is.euclid(d1) # TRUE
     plot(d0, d1)
     abline(lm(unclass(d1)~unclass(d0)))
     print(coefficients(lm(unclass(d1)~unclass(d0))), dig = 8) # d1 = d + Cte
     is.euclid(d0 + 2428) # FALSE
     is.euclid(d0 + 2430) # TRUE the smallest constant

