Spearman-rangcorrelatie

A/B-testen in R

Lauryn Burleigh

Data Scientist

Aannames voor Spearman-correlatie

  • Gerangschikt: op positie geordend
  • Hoge Spearman-correlatie: vergelijkbare posities in beide variabelen
  • Continue of discrete data
    • Ordinaal, interval of ratio

Afbeelding van vier balken van hoog naar laag, met de hoogste balk als 1 en de laagste als 4.

A/B-testen in R

Monotone relaties

  • Spearman-correlatie (rho): monotone relatie

    • Niet steeds stijgend of dalend
  • Monotoon is minder strikt dan lineair

ggplot(data, aes(x = drownings, 
                 y = icecream)) +
  geom_point()

Een spreidingsplot met een monotoon stijgende relatie: ijs blijft stabiel, stijgt, en blijft weer stabiel op de y-as terwijl verdrinkingen toenemen op de x-as.

Een spreidingsplot met een monotoon dalende relatie: ijs blijft stabiel, daalt, blijft stabiel en daalt dan weer op de y-as terwijl verdrinkingen toenemen op de x-as.

A/B-testen in R

Hypothese en steekproefgrootte

  • Nulhypothese: geen monotone samenhang tussen tijd en pizzagenot
library(pwr)
pwr.r.test(r = 0.3, power = 0.80, 
           sig.level = 0.05)
    approximate correlation power 
 calculation (arctangh transformation) 

              n = 84.07364
              r = 0.3
      sig.level = 0.05
          power = 0.8
    alternative = two.sided
A/B-testen in R

Spearman zonder groepen

cor.test(~ enjoyment + time, 
         data = pizza, 
         method = "spearman", 
        exact = FALSE)
    Spearman's rangcorrelatie rho
data:  time and enjoyment
S = 2, p-value = .003245
alternative hypothesis: true rho is 
not equal to 0
sample estimates:
      rho 
0.9984962 
samp <- length(pizza$time)
[1]  90
A/B-testen in R

Spearman binnen groepen

cor.test(~ enjoyment + time, 
         data = pizza, 
         subset = 
             (Topping == "Cheese"),
         method = "spearman",
         exact = FALSE)
    Spearman's rangcorrelatie rho
data:  time and enjoyment
S = 1.2434e-14, p-value = 0.0003968
alternative hypothesis: true rho is 
not equal to 0
sample estimates:
rho 
  1 
ggplot(pizza, aes(x = enjoyment, 
                  y = time, 
                  color = Topping)) + 
  geom_point()

Een steile positieve helling voor Kaas-data in blauw links op de x-as en een minder steile positieve helling voor Pepperoni-data in roze rechts op de x-as.

A/B-testen in R

Vermogensanalyse voor Spearman

library(pwr)
pwr.r.test(r = 0.998, n = 90, 
           sig.level = 0.003)
     approximate correlation power 
  calculation (arctangh transformation) 

              n = 90
              r = 0.998
      sig.level = 0.003
          power = 1
    alternative = two.sided
A/B-testen in R

Verwijzen naar de output

rhotest <- cor.test(~ enjoyment + time, 
         data = pizza, 
         method = "spearman")
samp <- length(pizza$time)
library(pwr)
pwr.r.test(r = rhotest$estimate, 
           sig.level = rhotest$p.value,
           n = samp)
     approximate correlation power 
  calculation (arctangh transformation) 

              n = 90
              r = 0.998
      sig.level = 0.003
          power = 1
    alternative = two.sided
A/B-testen in R

Laten we oefenen!

A/B-testen in R

Preparing Video For Download...