Kom igångKom igång gratis

Ta bort skevhet från variablerna

Nu ska du transformera kolumnerna i wholesale med hjälp av Box-Cox-transformation och sedan utforska diagrammet över parvisa samband för att kontrollera att skevheten i fördelningarna har minskat och att de blivit mer normalfördelade. Det här är ett viktigt steg för att se till att K-means-algoritmen konvergerar och hittar homogena grupper (även kallade kluster eller segment) av observationer.

Modulen stats är inläst från biblioteket scipy, och datamängden wholesale har importerats som en pandas DataFrame.

Den här övningen är en del av kursen

Maskininlärning för marknadsföring i Python

Visa kurs

Övningsinstruktioner

  • Definiera en anpassad Box-Cox-transformationsfunktion som kan tillämpas på en pandas DataFrame.
  • Tillämpa funktionen på datamängden wholesale.
  • Rita ett diagram över de parvisa sambanden mellan de transformerade variablerna.
  • Visa diagrammet.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Define custom Box Cox transformation function
def boxcox_df(x):
    x_boxcox, _ = stats.___(x)
    return x_boxcox

# Apply the function to the `wholesale` dataset
wholesale_boxcox = ___.___(boxcox_df, axis=0)

# Plot the pairwise relationships between the transformed variables 
sns.___(___, diag_kind='kde')

# Display the chart
plt.___()
Redigera och kör kod