R/lineouts.R

#SUFC Reports
#Lineout Numbers Statistics

lineouts <- function(match_report){
  library(pdftools, quietly = TRUE)
  library(stringr, quietly = TRUE)
  
  test <- match_report
  file <- pdf_text(test)
  file_page_3 <- file[3]
  
  keyword <- "LINEOUT NUMBERS"
  file_page_3_sub <- sub(paste0(".*",keyword), "", file_page_3)
  file_page_3_sub <- gsub("^ *|(?<= ) | *$", "", file_page_3_sub, perl = TRUE)
  file_page_3_sub <- strsplit(file_page_3_sub, "\n", fixed = TRUE)
  for(i in 1:length(file_page_3_sub[[1]])){
    file_page_3_sub[[1]][i] <- trimws(file_page_3_sub[[1]][i], "both")
  }
  
  lineouts <- NULL
  for(i in 1:length(file_page_3_sub[[1]])){
    if(substr(file_page_3_sub[[1]][i], 1, 4) == "FULL"){
      lineouts[i] <- file_page_3_sub[[1]][i]
    } else if(substr(file_page_3_sub[[1]][i], 1, 5) == "CLEAN"){
      lineouts[i] <- file_page_3_sub[[1]][i]
    } else if(substr(file_page_3_sub[[1]][i], 1, 7) == "SCRAPPY"){
      lineouts[i] <- file_page_3_sub[[1]][i]
    } else if(substr(file_page_3_sub[[1]][i], 1, 4) == "LOST"){
      lineouts[i] <- file_page_3_sub[[1]][i]
    } else if(substr(file_page_3_sub[[1]][i], 1, 5) == "6 MAN"){
      lineouts[i] <- file_page_3_sub[[1]][i]
    } else if(substr(file_page_3_sub[[1]][i], 1, 5) == "5 MAN"){
      lineouts[i] <- file_page_3_sub[[1]][i]
    } else if(substr(file_page_3_sub[[1]][i], 1, 5) == "4 MAN"){
      lineouts[i] <- file_page_3_sub[[1]][i]
    } else if(substr(file_page_3_sub[[1]][i], 1, 5) == "3 MAN"){
      lineouts[i] <- file_page_3_sub[[1]][i]
    } else if(substr(file_page_3_sub[[1]][i], 1, 5) == "2 MAN"){
      lineouts[i] <- file_page_3_sub[[1]][i]
    } else if(substr(file_page_3_sub[[1]][i], 1, 5) == "QUICK"){
      lineouts[i] <- file_page_3_sub[[1]][i]
    } else {
      lineouts[i] <- "Empty"
    }
  }
  lineouts <- lineouts[lineouts != "Empty"]
  lineouts <- gsub("6 MAN", "6-MAN", lineouts)
  lineouts <- gsub("5 MAN", "5-MAN", lineouts)
  lineouts <- gsub("4 MAN", "4-MAN", lineouts)
  lineouts <- gsub("3 MAN", "3-MAN", lineouts)
  lineouts <- gsub("2 MAN", "2-MAN", lineouts)
  lineouts <- strsplit(lineouts, " ")
  
  for(i in 1:length(lineouts)){
    if(length(lineouts[[i]] == 6)){
      lineouts[[i]] <- paste(lineouts[[i]][1], lineouts[[i]][2], lineouts[[i]][3], lineouts[[i]][length(lineouts[[i]]) - 2], lineouts[[i]][length(lineouts[[i]]) - 1], lineouts[[i]][length(lineouts[[i]])], sep = " ")
    } else {
      lineouts[[i]] <- paste(lineouts[[i]][1], lineouts[[i]][2], lineouts[[i]][3], lineouts[[i]][length(lineouts[[i]]) - 2], lineouts[[i]][length(lineouts[[i]]) - 1], lineouts[[i]][length(lineouts[[i]])], sep = " ")
    }
  }
  
  lineouts <- data.frame(unlist(lineouts), stringsAsFactors = FALSE)
  lineouts <- data.frame(matrix(unlist(strsplit(lineouts$unlist.lineouts., " ")), ncol = 6, byrow = TRUE), stringsAsFactors = FALSE)
  lineouts <- lineouts[,-4]
  
  #Get Team Names
  file_page_3 <- gsub("^ *|(?<= ) | *$", "", file_page_3, perl = TRUE)
  file_page_3 <- strsplit(file_page_3, "\n", fixed = TRUE)
  file_page_3[[1]][2] <- trimws(file_page_3[[1]][2], "both")
  names(lineouts) <- c(file_page_3[[1]][2], "home_num", "home_pct", "away_num", "away_pct")
  
  lineouts
}
AndrewFerris/sufc1863 documentation built on May 5, 2019, 5:59 a.m.