CommencezCommencez gratuitement

Observations de Pokémon : regroupement hiérarchique

Nous poursuivons l'enquête sur les observations de Pokémon légendaires amorcée à l'exercice précédent. Rappelez-vous que, dans le nuage de points de l'exercice précédent, vous avez repéré deux zones où les observations de Pokémon étaient denses. Cela indique que les points semblent se séparer en deux grappes. Dans cet exercice, vous allez former deux grappes d'observations à l'aide d'un regroupement hiérarchique.

'x' et 'y' sont les colonnes des coordonnées X et Y des lieux d'observation, stockées dans un DataFrame pandas, df. Vous avez à votre disposition : matplotlib.pyplot sous le nom plt, seaborn sous le nom sns, et pandas sous le nom pd.

Cette activité fait partie du cours

Analyse de grappes en Python

Voir le cours

Instructions de l’exercice

  • Importez les bibliothèques linkage et fcluster.
  • Utilisez la fonction linkage() pour calculer les distances avec la méthode ward.
  • Générez des étiquettes de grappe pour chaque point de données en deux grappes à l'aide de la fonction fcluster().
  • Tracez les points avec seaborn et attribuez une couleur différente à chaque grappe.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Import linkage and fcluster functions
from scipy.cluster.hierarchy import ____, ____

# Use the linkage() function to compute distance
Z = ____(____, 'ward')

# Generate cluster labels
df['cluster_labels'] = ____(____, ____, criterion='maxclust')

# Plot the points with seaborn
sns.scatterplot(x=____, y=____, hue=____, data=df)
plt.show()
Modifier et exécuter le code