CommencerCommencer gratuitement

Moyennes de segmentation NMF

Pour terminer, vous allez explorer visuellement les valeurs moyennes de la solution à 3 segments construite par NMF et la comparer à celle de K-means. Ici, vous allez extraire la matrice de caractéristiques W, que nous utiliserons pour obtenir l’affectation « dure » des segments en choisissant, pour chaque client, la valeur de colonne (segment) ayant la valeur associée la plus élevée dans cette matrice.

Nous avons chargé la bibliothèque pandas sous le nom pd et la bibliothèque seaborn sous le nom sns. Le jeu de données brut wholesale a été importé, ainsi que l’instance NMF déjà ajustée à 3 segments sous le nom nmf. Le jeu de données components a été chargé en tant que DataFrame pandas.

Cet exercice fait partie du cours

Machine Learning pour le marketing en Python

Afficher le cours

Instructions

  • Créez la matrice W en passant les valeurs transformées comme données, et les indices des components comme noms de colonnes.
  • Attribuez le segment en sélectionnant le nom de la colonne pour laquelle la valeur correspondante est la plus grande.
  • Calculez les valeurs moyennes des colonnes pour chaque segment.
  • Représentez les valeurs moyennes sous forme de carte thermique (heatmap).

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Create the W matrix
W = pd.DataFrame(data=nmf.___(wholesale), columns=components.index)
W.index = wholesale.index

# Assign the column name where the corresponding value is the largest
wholesale_nmf3 = wholesale.___(segment = W.idxmax(axis=1))

# Calculate the average column values per each segment
nmf3_averages = wholesale_nmf3.___('___').mean().round(0)

# Plot the average values as heatmap
sns.___(___.T, cmap='YlGnBu')

# Display the chart
plt.show()
Modifier et exécuter le code