probleme avec l'utilisation de la fonction mstree

From: Nicolas Turenne (nicolas.turenne@jouy.inra.fr)
Date: Tue May 23 2006 - 12:23:33 MEST

  • Next message: Chrystal Otero: "x----SPAM----x Re:"

    Bonjour à tous,

    Je suis un nouvel utilisateur d'ADE-4.
    Je souhaite utiliser la fonction mstree qui calcule une
    matrice de liens adjacents avec l'algorithme du minimum spanning tree.

    Si j'utilise les donnees suivantes:
    > x1=c(1,1,1,1,1,0,0,0,0,0);
    > x2=c(1,0,1,1,1,0,0,0,0,0);
    > x3=c(1,1,1,1,1,0,0,0,0,0);
    > x4=c(1,1,1,1,1,0,0,0,0,0);
    > x5=c(0,0,0,0,0,1,0,1,1,1);
    > x6=c(0,0,0,0,0,1,1,1,1,1);
    > x7=c(0,0,0,0,0,1,1,1,1,1);
    > x8=c(0,0,0,0,0,1,0,1,1,1);
    > mat=data.frame(x1,x2,x3,x4,x5,x6,x7,x8);

    j'obtiens la matrice:
    > mat
       x1 x2 x3 x4 x5 x6 x7 x8
    1 1 1 1 1 0 0 0 0
    2 1 0 1 1 0 0 0 0
    3 1 1 1 1 0 0 0 0
    4 1 1 1 1 0 0 0 0
    5 1 1 1 1 0 0 0 0
    6 0 0 0 0 1 1 1 1
    7 0 0 0 0 0 1 1 0
    8 0 0 0 0 1 1 1 1
    9 0 0 0 0 1 1 1 1
    10 0 0 0 0 1 1 1 1

    en appliquant la routine je m'attends a trouver deux branches (clusters)
    et en fait tout est lie'
    par le biais des individus 7 et 2:

    > mat=data.frame(x1,x2,x3,x4,x5,x6,x7,x8);
    > D = dist( mat, method= "euclidian");
    > MatAdjMst = mstree( D, 1); s.label(mat[,1:2], clab = 0, cpoi = 2,
    neig = MatAdjMst, cnei = 1);
    > MatAdj01 = neig2mat(MatAdjMst);
    > print(MatAdj01);
       1 2 3 4 5 6 7 8 9 10
    1 0 0 0 1 0 0 0 0 0 0
    2 0 0 0 1 0 0 1 0 0 0
    3 0 0 0 1 0 0 0 0 0 0
    4 1 1 1 0 1 0 0 0 0 0
    5 0 0 0 1 0 0 0 0 0 0
    6 0 0 0 0 0 0 0 0 0 1
    7 0 1 0 0 0 0 0 0 0 1
    8 0 0 0 0 0 0 0 0 0 1
    9 0 0 0 0 0 0 0 0 0 1
    10 0 0 0 0 0 1 1 1 1 0

    J'ai peut-etre mal calcule' la matrice de dissimilarite'.

    Merci d'avance de l'aide que vous pourrez m'apporter.

    Bien cordialement.

    N.T.



    This archive was generated by hypermail 2b30 : Tue May 23 2006 - 12:44:43 MEST