Mediile segmentelor NMF
În final, vei explora vizual valorile medii ale soluției cu 3 segmente construite prin NMF și o vei putea compara cu cea obținută prin K-means. Aici vei extrage matricea de caracteristici W, pe care o vom folosi pentru a determina apartenența fermă la un segment – alegând, pentru fiecare client, coloana (segmentul) cu cea mai mare valoare asociată din această matrice.
Biblioteca pandas a fost importată ca pd, iar seaborn ca sns. Setul de date brut wholesale a fost importat, alături de instanța NMF deja antrenată pe 3 segmente, ca nmf. Setul de date components a fost încărcat ca DataFrame pandas.
Acest exercițiu face parte din cursul
Machine Learning pentru Marketing în Python
Instrucțiuni pentru exercițiu
- Creează matricea W transmițând valorile transformate ca date și indicii din
componentsca valori ale coloanelor. - Atribuie valoarea segmentului selectând numele coloanei unde valoarea corespunzătoare este cea mai mare.
- Calculează valorile medii ale coloanelor pentru fiecare segment.
- Reprezintă grafic valorile medii sub formă de hartă termică (heatmap).
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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()