ÎncepețiÎncepe gratuit

Modelul logistic eCommerce: analiza k-means

Acum că ai obținut primele informații despre rezultatele modelului, poți aprofunda înțelegerea tiparelor și a relațiilor dintre rezultate folosind analiza de clustere.

Vei utiliza algoritmul k-means pentru a înțelege principalii factori care influențează comportamentul modelului și pentru a clasifica punctele de date în grupuri cu proprietăți similare. Aceasta te va ajuta să identifici blocajele din operațiunea reală de comerț electronic/logistică pe care o reprezintă modelul tău.

kmeans și whiten au fost importate din scipy.cluster.vq și matplotlib.pyplot as plt. Seturile de date originale și cele normalizate conțin coloanele de mai jos. Variabila auxiliară p definește indexurile acestor procese în seturi de date.

  • coloana 1 (p=0): time_requests
  • coloana 2 (p=1): time_packaging
  • coloana 3 (p=2): time_shipping
  • coloana 4 (p=3): sum/total time

Acest exercițiu face parte din cursul

Simulare de evenimente discrete în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Aplică metoda whiten pe array-ul record_processes_np pentru a-l pregăti pentru clustering k-means.
  • Rulează metoda k-means pe array-ul whitened folosind pachetul SciPy, configurând metoda k-means să identifice trei clustere.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Whiten the record_processes_np array
whitened = ____(record_processes_np)

# Run the k-means method on whitened, using three clusters
codebook, distortion = ____(whitened, ____)

fig, axs = plt.subplots(3)
for p in range(3):
    axs[p].scatter(whitened[:, 3], whitened[:, p], marker=".", label=f"{process_names[p]}")
    axs[p].scatter(codebook[:, 3], codebook[:, p], label='Cluster Centroids')
    axs[p].legend(loc='center left', bbox_to_anchor=(1, 0.5))
    axs[p].set_ylabel(f'Process duration (days)')
    axs[p].set_xlabel('Total duration (days)')
plt.show()
Editează și rulează codul