{"cells":[{"metadata":{"_uuid":"051d70d956493feee0c6d64651c6a088724dca2a","_execution_state":"idle","trusted":true,"collapsed":true},"cell_type":"code","source":"#explore_joins.R\n\nsource('../usr/lib/config/config.R')\nload(file = '../input/join-lightweight-kaggle-nb/join_lightweight_kaggle_nb.RData')\n\nif (slim_memory == TRUE) {\n   \n  raw2[, c(\"o\", \"dir\", \"dis\", \n           \"s\", \"s_mnl\", \"s_log\", \"s_mnl_log\", \n           \"dis_mnl\", \"dis_log\", \"dis_mnl_log\"\n           ) := NULL]\n  \n}\n\n#incorporate additional detail in PlayList data\nif (load_joined == FALSE) {\n  \n  cols <- \"BodyPart\"\n  raw3[raw1,\n       (cols) := mget(paste0(\"i.\", cols, sep=\"\") ), \n       on = c(\"PlayKey\")]  \n  raw3[, `:=` (InjuryOccurred = !is.na(BodyPart))]\n  \n  \n  cols <- colnames(hmnz_weather)[!(colnames(hmnz_weather) %in% \"Weather\")]\n  raw3[hmnz_weather,\n       (cols) := mget(paste0(\"i.\", cols, sep=\"\") ), \n       on = c(\"Weather\")]  \n\n}\n\n#source function for KDE-by-group calcs.\nsource('../usr/lib/kde_by_group_calc_plot/kde_by_group_calc_plot.R')\n# output_plot <- function(plot_type, tail_trim = NULL, varname_plot, \n#                         varname_grp1=\"InjuryOccurred\", varname_fwrap)\n\n\n\n\n\n\n\n#intra-play explore -----------------------------\n\ntbl <- raw2\nvarnames <- c(\"o_dir_diff_angle\") #\"dir\", \"o\", #\"o_dir_diff_angle_demean\", \n              #\"dis\", \"dis_log\", \"dis_mnl_log\",\n              #\"s\", \"s_log\", # \"s_log_demean\", \n              #\"s_mnl\", \"s_mnl_log\",  \n              #\"accel\", \"accel_log_diff\", #\"accel_log_diff_demean\", \n              #\"accel_mnl\", \"accel_mnl_log_diff\")\n\n\n#intra-plot grouping var is InjuryOccurred, between-plot grouped on FieldType\nplots_density1.l <- lapply(varnames, varname_grp1 = \"InjuryOccurred\", tail_trim=NULL,\n                           varname_fwrap = \"FieldType\", plot_type = \"density\", FUN = output_plot)\nnames(plots_density1.l) <- varnames\nplots_density_intra_play.l <- plots_density1.l\n\nplots_density1b <- output_plot(varname_plot = \"accel_mnl_log_diff\", varname_grp1 = \"InjuryOccurred\",\n                               varname_fwrap = \"FieldType\", plot_type = \"density\",\n                               tail_trim = .025)\nplots_density_intra_play.l <- list.append(plots_density_intra_play.l, accel_mnl_log_diff_trim025 = plots_density1b)\n\nplots_density1c.l <- lapply(varnames, varname_grp1 = \"FieldType\", tail_trim=NULL,\n                            varname_fwrap = \"InjuryOccurred\", plot_type = \"density\", FUN = output_plot)\nnames(plots_density1c.l) <- varnames\nplots_density_intra_play_inv.l <- plots_density1c.l\n\ntbl <- raw2[event != \"\", ]\nplots_bar_intra_play <- output_plot(plot_type = \"bar\", varname_plot = \"event\", \n                                    varname_grp1 = \"InjuryOccurred\", \n                                    varname_fwrap = \"FieldType\")\n\nplots_density_intra_play.l <- list.append(plots_density_intra_play.l, event = plots_bar_intra_play)\n\n\n\n\n#lightweight join: following provocative evidence from o_dir_diff_angle density plot above,\n#merge intra-play data with other factors possibly correlated with o_dir_diff_angle\nraw4 <- raw2[raw3, \n             list(PositionGroup, o_dir_diff_angle, #o_dir_diff_angle_demean,\n                  #event, \n                  #Weather_hmnz_light, Weather_hmnz_temp, Weather_hmnz_precip, Weather_hmnz_enviro,\n                  FieldType, InjuryOccurred), \n             on = \"PlayKey\"]\n\ntbl <- raw4\nplot_density_o_dir_diff_angle_by_pos <- \n  output_plot(plot_type = \"density\",\n              varname_plot = \"o_dir_diff_angle\",\n              varname_grp1 = \"FieldType\",\n              varname_fwrap = \"PositionGroup\")\n  \n\n\n\n#QUESTION 1: holding PositionGroup constant, \n#            among the non-injured, does distribution of varname_plot_i vary by FieldType?\n#QUESTION 2: holding PositionGroup & FieldType constant, how does distribution of varname_plot_i compare\n#            among injured v non-injured population?\npos_for <- c(\"OL\", \"DB\", \"TE\", \"DL\", \"RB\", \"WR\", \"LB\")\nvarname_plot_i <- \"o_dir_diff_angle\" #\"o_dir_diff_angle_demean\"\np1.l <- list()\np2.l <- list()\n\nfor (pos_i in pos_for) {\n\npos <- pos_i\ntbl <- raw4[PositionGroup == pos & InjuryOccurred == FALSE]\n\np1 <- output_plot(plot_type = \"density\",\n                 varname_plot = varname_plot_i,\n                 varname_grp1 = \"FieldType\",\n                 varname_fwrap = \"PositionGroup\")\np1$plot <- p1$plot + labs(title = paste(\"o_dir_diff_angle by FieldType: \", pos, sep=\"\"))\n#path_plots_adhoc <- paste(path_plots, \"/o_dir_diff_angle_by_FieldType/\", pos, \".pdf\", sep=\"\")\n#pdf(file=path_plots_adhoc, width = 11, height = 8.5)\n#print(p1$plot)\n#dev.off()\np1.l <- list.append(p1.l, p1)\n\n\n#PURPOSE: for a particular position, save KDE plot highlighting InjuryOccurred\np2 <- output_plot(plot_type = \"density\",\n                 varname_plot = varname_plot_i,\n                 varname_grp1 = \"InjuryOccurred\",\n                 varname_fwrap = \"FieldType\")\np2$plot <- p2$plot + labs(title = paste(varname_plot_i, \" by Injury & FieldType: \", pos, sep=\"\"))\n#path_plots_adhoc <- paste(path_plots, \"/o_dir_diff_angle_by_Injury_FieldType/\", pos, \".pdf\", sep=\"\")\n#pdf(file=path_plots_adhoc, width = 11, height = 8.5)\n#print(p2$plot)\n#dev.off()\np2.l <- list.append(p2.l, p2)\n\n\nprint(pos)\n\n}\nnames(p1.l) <- pos_for ; names(p2.l) <- pos_for\n\nplots_density_intra_play_noninj_by_pos_FieldType.l <- p1.l\nplots_density_intra_play_by_pos_FieldType_inj.l <- p2.l\nrm(p1.l, p2.l)\n\n#end intra-play explore -----------------------------\n\n\n\n\n\n\n\n\n\n\n\n\n#exploration for which intra-play data not necessary ------------- \n\ntbl <- raw3\nvarnames <- c(\"Temperature\", \"PlayerGamePlay\", \"PlayerDay_interval\")\n\n#within-plot grouping InjuryOccurred, between-plot grouping FieldType\nplots_density2.l <- lapply(varnames, varname_grp1 = \"InjuryOccurred\",\n                           tail_trim = NULL, varname_fwrap = \"FieldType\", \n                           plot_type = \"density\", FUN = output_plot)\nnames(plots_density2.l) <- varnames\nplots_density_PlayList.l <- plots_density2.l\nrm(plots_density2.l)\n\n\n\n\n#bar charts (frequency tabulations)\n\nvarnames <- c(\"PlayType\", \"Position\", \"PositionGroup\", \"Weather_hmnz_light\",\n              \"Weather_hmnz_temp\", \"Weather_hmnz_precip\", \"Weather_hmnz_enviro\")\nplots_bar_PlayList.l <- lapply(varnames, tail_trim=NULL, varname_grp1 = \"InjuryOccurred\", \n                      varname_fwrap = \"FieldType\", plot_type = \"bar\", FUN = output_plot)\nnames(plots_bar_PlayList.l) <- varnames\n\nplots_density_PlayList.l <- list.append(plots_density_PlayList.l, plots_bar_PlayList.l)\n\n#-------------------------------------------\n\n\n","execution_count":null,"outputs":[]}],"metadata":{"kernelspec":{"display_name":"R","language":"R","name":"ir"},"language_info":{"mimetype":"text/x-r-source","name":"R","pygments_lexer":"r","version":"3.4.2","file_extension":".r","codemirror_mode":"r"}},"nbformat":4,"nbformat_minor":1}