Markov Chains

A Markov model predicts the probability that a user will transition from point A to point B based on steps that a user takes through a website. The sequence of these contents are determined by the Markov order, which range from [0,4]. A Markov model representation of the customer buying or conversion process might look something like the following

The outcome of a Markov model is binary; a customer either converts or does not (NULL).

Build the simple heuristic models (First Click/first_touch, Last Click/last_touch and Linear Attribution/linear_touch):

##    channel_name first_touch_conversions first_touch_value
## 1           eta                    3164        11909.4762
## 2          iota                    4606        19597.2613
## 3         alpha                    6308        19121.2724
## 4          beta                    2831        12235.5917
## 5         theta                    1606         6652.3493
## 6        lambda                     902         3735.6022
## 7         kappa                      74          305.7432
## 8          zeta                      27          103.0040
## 9       epsilon                      99          412.3012
## 10        gamma                     165          718.9780
## 11        delta                       1            6.1190
## 12           mi                       2            5.2730
##    last_touch_conversions last_touch_value linear_touch_conversions
## 1                    4167       16754.2038              3539.951157
## 2                    3355       13487.9743              3857.096221
## 3                    8447       28414.2143              7574.718594
## 4                     989        3850.0210              2083.500145
## 5                     653        2799.0920              1022.801394
## 6                    1207        5249.9500              1035.257572
## 7                     230        1069.3843               137.964078
## 8                     107         453.2608               136.551540
## 9                     531        2202.6123               272.170438
## 10                     92         506.0140               121.041639
## 11                      5          10.9720                 1.725000
## 12                      2           5.2730                 2.222222
##    linear_touch_value
## 1        13783.497051
## 2        15988.988995
## 3        24524.709569
## 4         8954.266717
## 5         4295.743619
## 6         4430.316169
## 7          599.747786
## 8          539.528763
## 9         1106.270065
## 10         569.417358
## 11           4.404050
## 12           6.081444
##    channel_name total_conversion total_conversion_value
## 1           eta                0                      0
## 2          iota                0                      0
## 3         alpha                0                      0
## 4          beta                0                      0
## 5         theta                0                      0
## 6        lambda                0                      0
## 7         kappa                0                      0
## 8          zeta                0                      0
## 9       epsilon                0                      0
## 10        gamma                0                      0
## 11        delta                0                      0
## 12           mi                0                      0

4 types of data modelling are put together to compare and contrasts

Outcomes

Ggplot2 are use to graph the outcomes

The Total Conversions are plotted against the channel name

Combining Data and Final Visualizations

## Warning in `[<-.factor`(`*tmp*`, ri, value = c(19121.2723557988,
## 12235.5917443553, : invalid factor level, NA generated