R/kicking.R

#SUFC Reports
#kicking Numbers Statistics

kicking <- function(match_report){

  library(pdftools, quietly = TRUE)
  library(stringr, quietly = TRUE)
  
  test <- match_report
  file <- pdf_text(test)
  file_page_1 <- file[2]
  
  keyword <- "KICKING"
  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")
  }
  
  kicking <- NULL
  for(i in 1:length(file_page_1_sub[[1]])){
    if(grepl("SHORT", file_page_1_sub[[1]][i])){
      kicking[i] <- file_page_1_sub[[1]][i]
    } else if(grepl("TERRITORY", file_page_1_sub[[1]][i])){
      kicking[i] <- file_page_1_sub[[1]][i]
    } else if(grepl("TOUCH", file_page_1_sub[[1]][i])){
      kicking[i] <- file_page_1_sub[[1]][i]
    } else {
      kicking[i] <- "Empty"
    }
  }
  
  kicking <- kicking[kicking != "Empty"]
  kicking <- strsplit(kicking, " ")
  
  for(i in 1:length(kicking[[1]])){
    if(kicking[[1]][i] == "SHORT"){
      short <- i
    }
  }
  
  for(i in 1:length(kicking[[2]])){
    if(kicking[[2]][i] == "TERRITORY"){
      territory <- i
    }
  }
  
  for(i in 1:length(kicking[[3]])){
    if(kicking[[3]][i] == "TOUCH"){
      touch <- i
    }
  }
  
  kicking[[1]] <- c(kicking[[1]][short - 1], kicking[[1]][short], kicking[[1]][short + 1])
  kicking[[2]] <- c(kicking[[2]][territory - 1], kicking[[2]][territory], kicking[[2]][territory + 1])
  kicking[[3]] <- c(kicking[[3]][touch - 1], kicking[[3]][touch], kicking[[3]][touch + 1])
  
  kicking <- data.frame(matrix(unlist(kicking), ncol = 3, 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(kicking) <- c("home_kicking", file_page_1[[1]][2], "away_kicking")
  kicking <- kicking[,c(2, 1, 3)]
  
  kicking
}
AndrewFerris/sufc1863 documentation built on May 5, 2019, 5:59 a.m.