R/point_scoring.R

#SUFC Reports
#Point Scoring Numbers Statistics

point_scoring <- function(match_report){
  library(pdftools, quietly = TRUE)
  library(stringr, quietly = TRUE)
  
  test <- match_report
  file <- pdf_text(test)
  file_page_1 <- file[1]
  
  keyword <- "POINT SCORING"
  file_page_1_sub <- sub(paste0(".*",keyword), "", file_page_1)
  file_page_1_sub <- gsub("^ *|(?<= ) | *$", "", file_page_1_sub, perl = TRUE)
  file_page_1_sub <- strsplit(file_page_1_sub, "\n", fixed = TRUE)
  for(i in 1:length(file_page_1_sub[[1]])){
    file_page_1_sub[[1]][i] <- trimws(file_page_1_sub[[1]][i], "both")
  }
  
  point_scoring <- NULL
  for(i in 1:length(file_page_1_sub[[1]])){
    if(grepl("TRIES", file_page_1_sub[[1]][i])){
      point_scoring[i] <- file_page_1_sub[[1]][i]
    } else if(grepl("CONVERSIONS", file_page_1_sub[[1]][i])){
      point_scoring[i] <- file_page_1_sub[[1]][i]
    } else if(grepl("PENALTY GOAL", file_page_1_sub[[1]][i])){
      point_scoring[i] <- file_page_1_sub[[1]][i]
    } else if(grepl("DROP GOAL", file_page_1_sub[[1]][i])){
      point_scoring[i] <- file_page_1_sub[[1]][i]
    } else {
      point_scoring[i] <- "Empty"
    }
  }
  
  point_scoring <- point_scoring[point_scoring != "Empty"]
  point_scoring <- gsub("PENALTY GOAL", "PENALTY-GOAL", point_scoring)
  point_scoring <- gsub("DROP GOAL", "DROP-GOAL", point_scoring)
  point_scoring <- strsplit(point_scoring, " ")
  
  point_scoring[[1]] <- c(point_scoring[[1]][[8]], 0, point_scoring[[1]][[9]], 0, point_scoring[[1]][[10]])
  point_scoring[[2]] <- c(point_scoring[[2]][[8]], point_scoring[[2]][[9]], point_scoring[[2]][[10]], point_scoring[[2]][[11]], point_scoring[[2]][[12]])
  point_scoring[[3]] <- c(point_scoring[[3]][[8]], point_scoring[[3]][[9]], point_scoring[[3]][[10]], point_scoring[[3]][[11]], point_scoring[[3]][[12]])
  point_scoring[[4]] <- c(point_scoring[[4]][[8]], point_scoring[[4]][[9]], point_scoring[[4]][[10]], point_scoring[[4]][[11]], point_scoring[[4]][[12]])
  
  point_scoring <- data.frame(matrix(unlist(point_scoring), ncol = 5, byrow = TRUE), stringsAsFactors = FALSE)
  
  file_page_1 <- gsub("^ *|(?<= ) | *$", "", file_page_1, perl = TRUE)
  file_page_1 <- strsplit(file_page_1, "\n", fixed = TRUE)
  file_page_1[[1]][2] <- trimws(file_page_1[[1]][2], "both")
  
  names(point_scoring) <- c("home_scored", "home_missed", file_page_1[[1]][2], "away_missed", "away_scored")
  point_scoring <- point_scoring[,c(3, 1, 2, 5, 4)]
  
  point_scoring
}
AndrewFerris/sufc1863 documentation built on May 5, 2019, 5:59 a.m.