################################################ #Utilisation des procedures R sur l'ex du cours# ################################################ d=matrix(0,nr=5,ncol=5) d[2,1]=2 d[3,1]=6 d[3,2]=5 d[4,1]=10 d[4,2]=9 d[4,3]=4 d[5,1]=9 d[5,2]=8 d[5,3]=5 d[5,4]=3 library(mva) d=as.dist(d) hc=hclust(d,method="single") names(hc) hc[[1]] # [,1] [,2] #[1,] -1 -2 #<0 cluster 1 2 #[2,] -4 -5 #<0 cluster 4 5 #[3,] -3 2 #3 est aglomere avec le deuxieme groupe i.e 4 5 #[4,] 1 3 #le groupe 1 et 3 fusionne # les "-" représentent des individus, par exemple -3 -> 3 eme individu # les "+" représentent des groupes, par exemple 2 -> 2eme groupe formé hc[[2]] #[1] 2 3 4 5 #hauteur du dendrogramme ie valeur de la distance correspondte hc[[3]] #[1] 1 2 3 4 5 #ordre des individus pour le plot #pour eviter les croisement dans le branches de l'arbre hc[[4]] #NULL #nom des individus ici on n'en n'a pas mis hc[[5]] #[1] "single" hc[[6]] #hclust(d = d, method = "single") hc[[7]] #nom de la distance utisilee ici #NULL #on n'en n'a pas mis #Le dendogramme plot(hc,main="excours") #calcul du coefficient de correlation cophenetic cophenetic(hc) # remarque : ici la première étape c'est quand on a n groupes (1 # individu = 1 groupe) # Le premier regroupement a donc lieu d'après eux à l'étape 2 et non # à l'étape 1. Cela ajoute 1 partout dans la mtrice, mais le # coefficient de corrélation reste le meme # 1 2 3 4 #2 2 #3 5 5 #4 5 5 4 #5 5 5 4 3 coph=cor(cophenetic(hc),d) coph #[1] 0.8226014 # mq c'est pareil si première étape = 1er regroupement cophenetic(hc)-1 # 1 2 3 4 #2 1 #3 4 4 #4 4 4 3 #5 4 4 3 2 # on retrouve la matrice vue en cours coph=cor(cophenetic(hc)-1,d) coph #[1] 0.8226014 # la valeur du coefficient est la meme #On peut rajouter cette valeur dans le titre du dendogramme plot(hc,main=paste("excours, coph=",round(coph,2))) #round pour afficher que deux ch apres la virgule #on peut utiliser rect.hclust(hc,k=2) # ou donner une hauteur h #Comment couper un arbre cutree(hc,k=2) # ou donner une hauteur h #[1] 1 1 2 2 2 cutree(hc,k=1:5) # 1 2 3 4 5 #[1,] 1 1 1 1 1 #[2,] 1 1 1 1 2 #interessant pour faire des plots #[3,] 1 2 2 2 3 #se lit en colonne #[4,] 1 2 3 3 4 #[5,] 1 2 3 4 5