Analyzing Results

Introduction to A/B Testing in R

Page Piccinini

Instructor

Experiment results

library(tidyverse)

experiment_data <- read_csv("experiment_data.csv") experiment_data
# A tibble: 588 x 3
   visit_date condition clicked_adopt_today
       <date>     <chr>               <int>
 1 2018-01-01   control                   0
 2 2018-01-01   control                   1
 3 2018-01-01   control                   0
 4 2018-01-01   control                   0
 5 2018-01-01      test                   0
Introduction to A/B Testing in R

Experiment results

library(tidyverse)

experiment_data <- read_csv("experiment_data.csv")
experiment_data

experiment_data %>% group_by(condition) %>% summarize(conversion_rate = mean(clicked_adopt_today))
# A tibble: 2 x 2
  condition conversion_rate
      <chr>           <dbl>
1   control       0.1666667
2      test       0.3843537
Introduction to A/B Testing in R

Plotting results

library(tidyverse)

experiment_data <- read_csv("experiment_data.csv")
experiment_data

experiment_data %>%
  group_by(condition) %>%
  summarize(conversion_rate = mean(clicked_adopt_today))
Introduction to A/B Testing in R

Plotting results

library(tidyverse)

experiment_data <- read_csv("experiment_data.csv")
experiment_data

experiment_data %>% group_by(visit_date, condition) %>% summarize(conversion_rate = mean(clicked_adopt_today))
Introduction to A/B Testing in R

Plotting results

library(tidyverse)

experiment_data <- read_csv("experiment_data.csv")
experiment_data

experiment_data_sum <- experiment_data %>% group_by(visit_date, condition) %>% summarize(conversion_rate = mean(clicked_adopt_today))
ggplot(experiment_data_sum, aes(x = visit_date, y = conversion_rate )) + geom_point() + geom_line()
Introduction to A/B Testing in R

Plotting results

library(tidyverse)

experiment_data <- read_csv("experiment_data.csv")
experiment_data

experiment_data_sum <- experiment_data %>%
  group_by(visit_date, condition) %>%
  summarize(conversion_rate = mean(clicked_adopt_today))

ggplot(experiment_data_sum,
       aes(x = visit_date,
           y = conversion_rate,
           color = condition,
           group = condition)) +
  geom_point() +
  geom_line()
Introduction to A/B Testing in R

Plotting results

control vs test

Introduction to A/B Testing in R

Analyzing results

library(tidyverse)
library(broom)

experiment_data <- read_csv("experiment_data.csv")

glm(                    ~

                            ) 
Introduction to A/B Testing in R

Analyzing results

library(tidyverse)
library(broom)

experiment_data <- read_csv("experiment_data.csv")

glm(clicked_adopt_today ~ 

                          )

Introduction to A/B Testing in R

Analyzing results

library(tidyverse)
library(broom)

experiment_data <- read_csv("experiment_data.csv")

glm(clicked_adopt_today ~ condition,

                          ) 

Introduction to A/B Testing in R

Analyzing results

library(tidyverse)
library(broom)

experiment_data <- read_csv("experiment_data.csv")

glm(clicked_adopt_today ~ condition,
    family = "binomial",
                          )

Introduction to A/B Testing in R

Analyzing results

library(tidyverse)
library(broom)

experiment_data <- read_csv("experiment_data.csv")

glm(clicked_adopt_today ~ condition,
    family = "binomial",
    data = experiment_data)

Introduction to A/B Testing in R

Analyzing results

library(tidyverse)
library(broom)

experiment_data <- read_csv("experiment_data.csv")

glm(clicked_adopt_today ~ condition,
    family = "binomial",
    data = experiment_data) %>%
  tidy()
           term  estimate std.error  statistic      p.value
1   (Intercept) -1.609438 0.1564922 -10.284464 8.280185e-25
2 conditiontest  1.138329 0.1971401   5.774212 7.731397e-09
Introduction to A/B Testing in R

Let's practice!

Introduction to A/B Testing in R

Preparing Video For Download...