Średnie segmentów NMF
Na koniec dokonasz wizualnej eksploracji średnich wartości rozwiązania opartego na 3 segmentach zbudowanego przez NMF i porównasz je z wynikami metody K-means. Wyodrębnisz macierz cech W, którą wykorzystasz do określenia przypisania do segmentów – wybierając dla każdego klienta kolumnę (segment) o najwyższej wartości w tej macierzy.
Biblioteka pandas została załadowana jako pd, a biblioteka seaborn jako sns. Surowy zbiór danych wholesale został zaimportowany, a dopasowana instancja NMF dla 3 segmentów – jako nmf. Zbiór danych components został wczytany jako ramka danych pandas.
To ćwiczenie jest częścią kursu
Uczenie maszynowe w marketingu w Pythonie
Instrukcje do ćwiczenia
- Utwórz macierz W, przekazując przekształcone wartości jako dane oraz indeks ze zbioru
componentsjako wartości kolumn. - Przypisz wartość segmentu, wybierając nazwę kolumny, w której odpowiadająca wartość jest największa.
- Oblicz średnie wartości kolumn dla każdego segmentu.
- Wykreśl średnie wartości w postaci mapy ciepła.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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()