Durchschnittswerte der NMF-Segmentierung
Zum Schluss untersuchst du visuell die Durchschnittswerte der 3-Segment-Lösung, die per NMF erstellt wurde, und kannst sie mit der K-Means-Lösung vergleichen. Dazu extrahierst du die Merkmalsmatrix W. Damit bestimmen wir die harte Segmentzuordnung, indem wir für jede Kundin bzw. jeden Kunden die Spalte (das Segment) mit dem höchsten Wert in dieser Matrix wählen.
Die Bibliothek pandas wurde als pd und seaborn als sns geladen. Der rohe wholesale-Datensatz wurde importiert und die bereits trainierte NMF-Instanz mit 3 Segmenten als nmf. Der components-Datensatz wurde als pandas DataFrame geladen.
Diese Übung ist Teil des Kurses
Machine Learning für Marketing mit Python
Anleitung zur Übung
- Erstelle die W-Matrix, indem du die transformierten Werte als Daten und die Komponenten-Indizes als Spaltenwerte übergibst.
- Weise den Segmentwert zu, indem du den Spaltennamen wählst, zu dem der entsprechende Wert am größten ist.
- Berechne die durchschnittlichen Spaltenwerte pro Segment.
- Stelle die Durchschnittswerte als Heatmap dar.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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()