Spaces:
Running
Running
Update app.R
Browse files
app.R
CHANGED
|
@@ -193,6 +193,22 @@ stuffplus_model <- xgb.load("stuffplus_xgb.json")
|
|
| 193 |
|
| 194 |
message(class(stuffplus_model))
|
| 195 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 196 |
process_dataset <- function(df) {
|
| 197 |
if ("Batter" %in% names(df)) {
|
| 198 |
df <- df %>% mutate(Batter = stringr::str_replace(Batter, "^\\s*(\\w+)\\s*,\\s*(\\w+)\\s*$", "\\2 \\1"))
|
|
|
|
| 193 |
|
| 194 |
message(class(stuffplus_model))
|
| 195 |
|
| 196 |
+
parse_flexible_date <- function(x) {
|
| 197 |
+
if (inherits(x, "Date")) return(x)
|
| 198 |
+
x <- as.character(x)
|
| 199 |
+
# Try yyyy-mm-dd first (TrackMan default)
|
| 200 |
+
d <- suppressWarnings(as.Date(x, format = "%Y-%m-%d"))
|
| 201 |
+
if (!all(is.na(d))) return(d)
|
| 202 |
+
# Try mm/dd/yyyy
|
| 203 |
+
d <- suppressWarnings(as.Date(x, format = "%m/%d/%Y"))
|
| 204 |
+
if (!all(is.na(d))) return(d)
|
| 205 |
+
# Try mm/dd/yy
|
| 206 |
+
d <- suppressWarnings(as.Date(x, format = "%m/%d/%y"))
|
| 207 |
+
if (!all(is.na(d))) return(d)
|
| 208 |
+
# Fallback
|
| 209 |
+
suppressWarnings(as.Date(x))
|
| 210 |
+
}
|
| 211 |
+
|
| 212 |
process_dataset <- function(df) {
|
| 213 |
if ("Batter" %in% names(df)) {
|
| 214 |
df <- df %>% mutate(Batter = stringr::str_replace(Batter, "^\\s*(\\w+)\\s*,\\s*(\\w+)\\s*$", "\\2 \\1"))
|