ComeçarComece de graça

Médias de segmentação por NMF

Por fim, você vai explorar visualmente os valores médios da solução com 3 segmentos construída por NMF e poderá compará-la com a de K-means. Aqui, você vai extrair a matriz de características W, que usaremos para obter a atribuição rígida de segmento escolhendo, para cada cliente, o nome da coluna (segmento) com o maior valor associado nesta matriz.

Carregamos a biblioteca pandas como pd e a seaborn como sns. O conjunto de dados bruto wholesale foi importado, assim como a instância já ajustada de NMF com 3 segmentos, como nmf. O conjunto de dados components foi carregado como um DataFrame do pandas.

Este exercício faz parte do curso

Machine Learning para Marketing em Python

Ver curso

Instruções do exercício

  • Crie a matriz W passando os valores transformados como dados e o índice de components como nomes de colunas.
  • Atribua o valor do segmento selecionando o nome da coluna onde o valor correspondente é o maior.
  • Calcule os valores médios das colunas para cada segmento.
  • Plote os valores médios em um heatmap.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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()
Editar e executar o código