8 min read

Player Data

library(tidyverse)
library(plotly)
library(rio)
library(ggiraphExtra)
library(ggthemes)
library(readr)

Beta

day30report <- read_csv("/tank301/onedrive/OneDrive_Personal/job_stuff/portfolio/Data/day30report.csv")
## 
## ── Column specification ────────────────────────────────────────────────────────
## cols(
##   TitleId = col_character(),
##   Ts = col_datetime(format = ""),
##   `Total Logins` = col_double(),
##   `Unique Logins` = col_double(),
##   UniquePayers = col_double(),
##   Revenue = col_character(),
##   Purchases = col_double(),
##   `Total Calls` = col_number(),
##   `Total Successful Calls` = col_number(),
##   `Total Errors` = col_number(),
##   Arpu = col_character(),
##   Arppu = col_character(),
##   `Average Purchase Price` = col_character(),
##   `New Users` = col_double()
## )
glimpse(day30report)
## Rows: 12
## Columns: 14
## $ TitleId                  <chr> "9CEB3", "9CEB3", "9CEB3", "9CEB3", "9CEB3", …
## $ Ts                       <dttm> 2021-02-11, 2021-02-20, 2021-02-21, 2021-02-…
## $ `Total Logins`           <dbl> 3, 25, 52, 88, 428, 453, 421, 548, 853, 687, …
## $ `Unique Logins`          <dbl> 1, 3, 21, 55, 239, 264, 242, 322, 426, 348, 2…
## $ UniquePayers             <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
## $ Revenue                  <chr> "$0.00", "$0.00", "$0.00", "$0.00", "$0.00", …
## $ Purchases                <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
## $ `Total Calls`            <dbl> 52, 529, 1533, 2778, 12017, 13071, 12011, 155…
## $ `Total Successful Calls` <dbl> 49, 523, 1465, 2636, 11160, 12004, 10822, 142…
## $ `Total Errors`           <dbl> 3, 6, 68, 142, 857, 1067, 1189, 1296, 2182, 2…
## $ Arpu                     <chr> "$0.00", "$0.00", "$0.00", "$0.00", "$0.00", …
## $ Arppu                    <chr> "$0.00", "$0.00", "$0.00", "$0.00", "$0.00", …
## $ `Average Purchase Price` <chr> "$0.00", "$0.00", "$0.00", "$0.00", "$0.00", …
## $ `New Users`              <dbl> 1, 3, 18, 49, 219, 230, 203, 266, 351, 269, 1…

untouched data

ggplot(day30report, aes(Ts, `New Users`))+
  geom_line()+
  theme_clean()+
  labs(title = "New Players since 2/11") + xlab("Time Stamp")


removing crashed data

d30 <-
  day30report[-c(10,11,12),]
str(d30)
## tibble [9 × 14] (S3: tbl_df/tbl/data.frame)
##  $ TitleId               : chr [1:9] "9CEB3" "9CEB3" "9CEB3" "9CEB3" ...
##  $ Ts                    : POSIXct[1:9], format: "2021-02-11" "2021-02-20" ...
##  $ Total Logins          : num [1:9] 3 25 52 88 428 453 421 548 853
##  $ Unique Logins         : num [1:9] 1 3 21 55 239 264 242 322 426
##  $ UniquePayers          : num [1:9] 0 0 0 0 0 0 0 0 0
##  $ Revenue               : chr [1:9] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Purchases             : num [1:9] 0 0 0 0 0 0 0 0 0
##  $ Total Calls           : num [1:9] 52 529 1533 2778 12017 ...
##  $ Total Successful Calls: num [1:9] 49 523 1465 2636 11160 ...
##  $ Total Errors          : num [1:9] 3 6 68 142 857 ...
##  $ Arpu                  : chr [1:9] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Arppu                 : chr [1:9] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Average Purchase Price: chr [1:9] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ New Users             : num [1:9] 1 3 18 49 219 230 203 266 351

Edited data graph

ggplot(d30, aes(Ts, `New Users`))+
  geom_line()+
  theme_clean()+
  labs(title = "New Players since 2/11") + xlab("Time Stamp")


mutated Error function

d50 <- day30report %>%
  mutate(errors = ave(`Total Errors`, FUN=function(x) c(0, diff(x))))
str(d50)
## spec_tbl_df [12 × 15] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
##  $ TitleId               : chr [1:12] "9CEB3" "9CEB3" "9CEB3" "9CEB3" ...
##  $ Ts                    : POSIXct[1:12], format: "2021-02-11" "2021-02-20" ...
##  $ Total Logins          : num [1:12] 3 25 52 88 428 453 421 548 853 687 ...
##  $ Unique Logins         : num [1:12] 1 3 21 55 239 264 242 322 426 348 ...
##  $ UniquePayers          : num [1:12] 0 0 0 0 0 0 0 0 0 0 ...
##  $ Revenue               : chr [1:12] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Purchases             : num [1:12] 0 0 0 0 0 0 0 0 0 0 ...
##  $ Total Calls           : num [1:12] 52 529 1533 2778 12017 ...
##  $ Total Successful Calls: num [1:12] 49 523 1465 2636 11160 ...
##  $ Total Errors          : num [1:12] 3 6 68 142 857 ...
##  $ Arpu                  : chr [1:12] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Arppu                 : chr [1:12] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Average Purchase Price: chr [1:12] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ New Users             : num [1:12] 1 3 18 49 219 230 203 266 351 269 ...
##  $ errors                : num [1:12] 0 3 62 74 715 210 122 107 886 297 ...
##  - attr(*, "spec")=
##   .. cols(
##   ..   TitleId = col_character(),
##   ..   Ts = col_datetime(format = ""),
##   ..   `Total Logins` = col_double(),
##   ..   `Unique Logins` = col_double(),
##   ..   UniquePayers = col_double(),
##   ..   Revenue = col_character(),
##   ..   Purchases = col_double(),
##   ..   `Total Calls` = col_number(),
##   ..   `Total Successful Calls` = col_number(),
##   ..   `Total Errors` = col_number(),
##   ..   Arpu = col_character(),
##   ..   Arppu = col_character(),
##   ..   `Average Purchase Price` = col_character(),
##   ..   `New Users` = col_double()
##   .. )

d50 plot

ggplot(d50, aes(Ts, `errors`))+
  geom_line()+
  theme_clean()+
  labs(title = "number of errors since last time stamp 2/11") + xlab("Time Stamp")

view(d30)

Alpha

alpha30 <- read_csv("/tank301/onedrive/OneDrive_Personal/job_stuff/portfolio/Data/alphadata30.csv")
alpha30
## # A tibble: 30 x 14
##    TitleId Ts                  `Total Logins` `Unique Logins` UniquePayers
##    <chr>   <dttm>                       <dbl>           <dbl>        <dbl>
##  1 D8AB8   2021-01-20 00:00:00             25              13            0
##  2 D8AB8   2021-01-21 00:00:00             53              15            0
##  3 D8AB8   2021-01-22 00:00:00             18               7            0
##  4 D8AB8   2021-01-23 00:00:00             33               9            0
##  5 D8AB8   2021-01-24 00:00:00             56              14            0
##  6 D8AB8   2021-01-25 00:00:00             37               9            0
##  7 D8AB8   2021-01-26 00:00:00             42               9            0
##  8 D8AB8   2021-01-27 00:00:00             45               5            0
##  9 D8AB8   2021-01-28 00:00:00             58              13            0
## 10 D8AB8   2021-01-29 00:00:00            131              14            0
## # … with 20 more rows, and 9 more variables: Revenue <chr>, Purchases <dbl>,
## #   Total Calls <dbl>, Total Successful Calls <dbl>, Total Errors <dbl>,
## #   Arpu <chr>, Arppu <chr>, Average Purchase Price <chr>, New Users <dbl>

untouched data

ggplot(alpha30, aes(Ts, `New Users`))+
  geom_line()+
  theme_clean()+
  labs(title = "New Players since 2/11") + xlab("Time Stamp")


removing crashed data

a30 <-
  alpha30[-c(10,11,12),]
str(d30)
## tibble [9 × 14] (S3: tbl_df/tbl/data.frame)
##  $ TitleId               : chr [1:9] "9CEB3" "9CEB3" "9CEB3" "9CEB3" ...
##  $ Ts                    : POSIXct[1:9], format: "2021-02-11" "2021-02-20" ...
##  $ Total Logins          : num [1:9] 3 25 52 88 428 453 421 548 853
##  $ Unique Logins         : num [1:9] 1 3 21 55 239 264 242 322 426
##  $ UniquePayers          : num [1:9] 0 0 0 0 0 0 0 0 0
##  $ Revenue               : chr [1:9] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Purchases             : num [1:9] 0 0 0 0 0 0 0 0 0
##  $ Total Calls           : num [1:9] 52 529 1533 2778 12017 ...
##  $ Total Successful Calls: num [1:9] 49 523 1465 2636 11160 ...
##  $ Total Errors          : num [1:9] 3 6 68 142 857 ...
##  $ Arpu                  : chr [1:9] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Arppu                 : chr [1:9] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Average Purchase Price: chr [1:9] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ New Users             : num [1:9] 1 3 18 49 219 230 203 266 351

Edited data graph

ggplot(a30, aes(Ts, `New Users`))+
  geom_line()+
  theme_clean()+
  labs(title = "New Players since 2/11") + xlab("Time Stamp")


mutated Error function

a50 <- alpha30 %>%
  mutate(errors = ave(`Total Errors`, FUN=function(x) c(0, diff(x))))
str(a50)
## spec_tbl_df [30 × 15] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
##  $ TitleId               : chr [1:30] "D8AB8" "D8AB8" "D8AB8" "D8AB8" ...
##  $ Ts                    : POSIXct[1:30], format: "2021-01-20" "2021-01-21" ...
##  $ Total Logins          : num [1:30] 25 53 18 33 56 37 42 45 58 131 ...
##  $ Unique Logins         : num [1:30] 13 15 7 9 14 9 9 5 13 14 ...
##  $ UniquePayers          : num [1:30] 0 0 0 0 0 0 0 0 0 0 ...
##  $ Revenue               : chr [1:30] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Purchases             : num [1:30] 0 0 0 0 0 0 0 0 0 0 ...
##  $ Total Calls           : num [1:30] 951 1938 1050 671 1442 ...
##  $ Total Successful Calls: num [1:30] 947 1851 1050 663 1426 ...
##  $ Total Errors          : num [1:30] 4 87 0 8 16 24 97 0 38 141 ...
##  $ Arpu                  : chr [1:30] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Arppu                 : chr [1:30] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ Average Purchase Price: chr [1:30] "$0.00" "$0.00" "$0.00" "$0.00" ...
##  $ New Users             : num [1:30] 1 3 0 1 3 2 4 0 3 5 ...
##  $ errors                : num [1:30] 0 83 -87 8 8 8 73 -97 38 103 ...
##  - attr(*, "spec")=
##   .. cols(
##   ..   TitleId = col_character(),
##   ..   Ts = col_datetime(format = ""),
##   ..   `Total Logins` = col_double(),
##   ..   `Unique Logins` = col_double(),
##   ..   UniquePayers = col_double(),
##   ..   Revenue = col_character(),
##   ..   Purchases = col_double(),
##   ..   `Total Calls` = col_number(),
##   ..   `Total Successful Calls` = col_number(),
##   ..   `Total Errors` = col_double(),
##   ..   Arpu = col_character(),
##   ..   Arppu = col_character(),
##   ..   `Average Purchase Price` = col_character(),
##   ..   `New Users` = col_double()
##   .. )

d50 plot

ggplot(a50, aes(Ts, `errors`))+
  geom_line()+
  theme_clean()+
  labs(title = "number of errors since last time stamp 2/11") + xlab("Time Stamp")

view(a30)