Categories

Archives

La stabilité des classes

Vous êtes sociologue et vous avez décidé, parce que vous avez un beau jeu de données, de réaliser une analyse des correspondances multiples suivie d’une classification ascendante hiérarchique (ACM puis CAH). Mais deux choses vous gênent : vous savez que certains petits effectifs (ceux des modalités de certaines variables) vont se retrouver aux extrémités des axes, et vous doutez de la stabilité des classifications produites. Or les diagnostics habituels de l’ACM ne proposent aucun « intervalle de confiance ».

J’essaye ici de proposer une méthode, très empirique, pour se faire une idée de la stabilité des classes. Le code est sur github et doit permettre très simplement la réplication sur d’autres données.

Commençons par un petit graphique. J’y représente les résultats d’une ACM, axes 1 et 2, où les points sont coloriés en fonction d’un des trois clusters déterminés par une CAH.

Que se serait-il passé si, au lieu des 400 individus du jeu de données utilisé ici, il n’y avait eu que 320 individus… est-ce que des individus auraient changé de cluster ?

Pour le savoir, je sélectionne au hasard 320 individus parmi les 400 de l’échantillon de départ, je fais une ACM suivie d’une CAH et je regarde le résultat. Je fais ça à 1000 reprises, en sélectionnant à chaque fois 320 individus au hasard, et je calcule la fréquence à laquelle ces individus changent de cluster.

Voici ce que ça donne. Les gros points sont les individus qui changent de cluster relativement souvent.

 

72 individus changent de clusters dans plus de 5% des simulations. Ils se répartissent sur tout le deuxième axe, et à proximité de “x = 0” sur le premier axe.

Techniquement, repérer « quels sont les individus de la simulation qui ont changé de cluster par rapport à la situation de départ » a posé un petit problème. Je pensais utiliser les numéros de cluster (1, 2 ou 3) et repérer les individus qui sont passés de « cluster 1 » à « cluster 2 ». Mais ces numéros ne sont pas stables. Je suis donc passé par une comparaison des « voisins ». Etre dans un cluster, c’est avoir les individus du cluster comme voisins. Si les voisins changent entre la situation de départ et la simulation, alors ça signifie un changement de cluster… mais pas pour tout le monde, uniquement pour la/les personne/s qui n’a/ont plus, dans la simulation, les voisins qu’elle/s avait/avaient au départ.
Vous verrez dans le script R sur github, si vous allez jusque là, comment j’ai fait.

Enfin se pose un autre problème : 72 individus qui changent de cluster, est-ce que c’est un indicateur de stabilité ou d’instabilité ? Quel seuil prendre ? À quoi comparer ce chiffre ?

Prénoms et “Google Insights”

Google Insights permet d’analyser les termes utilisés sur google.
Il propose des cartes montrant l’origine des recherches… Il semble y avoir une correspondance entre le lieu d’où partent les recherches pour le prénom “Z” et le lieu où naissent des petits “Z”. En tout cas, cela fonctionne avec les prénoms les plus “typiques”.

Ainsi Ainhoa (la carte du dessus), prénom typique du Sud Ouest de la France, est surtout “googlisé” par des résidents du sud-ouest. Même chose avec Klervi, Gurvan ou Katell (par des Bretons pour nommer des petits Bretons). Avec Marius pour les Marseillais, avec Guilhem pour leurs voisins… Et Zélie pour le Nord Pas de Calais.

Note, avec Google Insight, l’ego-googling devient encore plus amusant. Le lien suivant compare les recherches sur “coulmont” (c’est moi), “godechot” et “louis chauvel” : Google Insight : coulmont godechot chauvel.