diff --git a/R/cfbd_betting.R b/R/cfbd_betting.R index db88c59..c6a76f9 100644 --- a/R/cfbd_betting.R +++ b/R/cfbd_betting.R @@ -46,6 +46,7 @@ #' @importFrom purrr map_if #' @importFrom dplyr filter as_tibble rename #' @importFrom tidyr unnest +#' @importFrom stringr str_replace_all #' @export #' @examples #' \donttest{ @@ -136,10 +137,27 @@ cfbd_betting_lines <- function(game_id = NULL, # Get the content and return it as data.frame df <- res %>% httr::content(as = "text", encoding = "UTF-8") %>% + stringr::str_replace_all("NaN", 'null') %>% jsonlite::fromJSON(flatten = TRUE) %>% purrr::map_if(is.data.frame, list) %>% dplyr::as_tibble() %>% - tidyr::unnest("lines") + tidyr::unnest("lines") %>% + dplyr::mutate( + overUnder = dplyr::case_when( + .data$overUnder == "null" ~ NA_character_, + .default = .data$overUnder + ), + spread = dplyr::case_when( + .data$spread == "null" ~ NA_character_, + .default = .data$spread + ), + formattedSpread = dplyr::case_when( + is.na(.data$spread) ~ NA_character_, + .default = .data$formattedSpread + ) + ) + + if (!is.null(line_provider)) { if (is.list(df) & length(df) == 0) {