Leverage en conviction

Market Basket Analysis in Python

Isaiah Hull

Visiting Associate Professor of Finance, BI Norwegian Business School

Voortbouwen op eenvoudigere metrics

$$Support(X) = \frac{Frequency(X)}{N}$$

$$Support(X \rightarrow Y) = \frac{Frequency(X \& Y)}{N}$$

$$Confidence(X \rightarrow Y) = \frac{Support(X \rightarrow Y)} {Support(X)}$$

$$Lift(X \rightarrow Y) = \frac{Support(X \rightarrow Y)}{Support(X) Support(Y)}$$

Market Basket Analysis in Python

De leverage-metric

  • Leverage bouwt ook op support.

 

$$Leverage(X \rightarrow Y) = $$ $$Support(X \& Y) - Support(X) Support(Y)$$

  • Leverage lijkt op lift, maar is makkelijker te interpreteren.
  • Leverage ligt tussen -1 en +1.
    • Lift loopt van 0 tot oneindig.
Market Basket Analysis in Python

Leverage berekenen

# Bereken support voor Twilight en Harry Potter
supportTP = np.logical_and(books['Twilight'], books['Potter']).mean()

# Bereken support voor Twilight
supportT = books['Twilight'].mean()

# Bereken support voor Harry Potter
supportP = books['Potter'].mean()
# Bereken en print leverage
leverage = supportTP - supportP * supportT
print(leverage)
0.018
Market Basket Analysis in Python

De conviction-metric

  1. Conviction bouwt ook op support.
  2. Complexer en minder intuïtief dan leverage.

 

$$Conviction(X \rightarrow Y) = $$ $$\frac{Support(X) Support(\bar{Y})} {Support(X \& \bar{{Y}})}$$

Market Basket Analysis in Python

Conviction interpreteren

Een miniatuur van Twilight.

Een miniatuur van Harry Potter and the Sorcerer's Stone.

Een miniatuur van Twilight.

Een miniatuur van The Hunger Games.

1 Afbeeldingen afkomstig van goodreads.com.
Market Basket Analysis in Python

Conviction berekenen

# Bereken support voor Twilight en Harry Potter en Twilight
supportTP = np.logical_and(books['Twilight'], books['Potter']).mean()
supportT = books['Twilight'].mean()
# Bereken support voor NIET Harry Potter
supportnP = 1.0 - books['Potter'].mean()
# Bereken support voor Twilight en NIET Harry Potter
supportTnP = supportT - supportPT
# Bereken conviction
conviction = supportT*supportnP / supportTnP
print(conviction)
1.16
Market Basket Analysis in Python

Laten we oefenen!

Market Basket Analysis in Python

Preparing Video For Download...