{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"# Executive Summary\n\n* This entry analyzes whether changes in a horse's racing strategy over time can indicate future injuries. \n* We found that the main influencing factors of racing strategies are the **race distance and surface (turf or dirt)**. \n* We created **optimal velocity profiles** from the velocity profiles of race winners for each race distance and surface combination.\n* We created **13 racing reports for all horses that were injured or died in 2019** with more than one race start. *The generated reports are available for download in the output folder of this Notebook.*\n* For 6 out of 10 horses with sufficient data, we observed an **increasing deviation from the optimal racing pattern leading up to the incident**.\n* We recommend including changes in a horse's velocity pattern over time in future studies of equine welfare. \n* We recommend conducting a specialized fitness check when a horse's racing strategy has shown a large deviation from the optimal racing pattern. This fitness check should aim to find pre-existing injuries.\n\n![museums-victoria-bHCRnIgejVs-unsplash.jpg](attachment:14e080c0-f623-440f-8a8e-1c62249b5622.jpg)\n\n*Photo by <a href=\"[https://unsplash.com/@museumsvictoria?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText](https://unsplash.com/@museumsvictoria?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)\">Museums Victoria</a> on <a href=\"[https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText](https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)\">Unsplash</a>*\n\n","metadata":{},"attachments":{"14e080c0-f623-440f-8a8e-1c62249b5622.jpg":{"image/jpeg":"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"}}},{"cell_type":"code","source":"pip install fpdf","metadata":{"_kg_hide-input":true,"_kg_hide-output":true,"execution":{"iopub.status.busy":"2022-11-09T14:11:31.633999Z","iopub.execute_input":"2022-11-09T14:11:31.634629Z","iopub.status.idle":"2022-11-09T14:11:48.820525Z","shell.execute_reply.started":"2022-11-09T14:11:31.634585Z","shell.execute_reply":"2022-11-09T14:11:48.819166Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"**Table of Contents**\n* [Introduction](#Introduction)\n* [Methodology](#Methodology)\n    * [Data Processing](#Data-Processing)\n    * [Feature Engineering](#Feature-Engineering)\n* [Experiments](#Experiments)\n    * [Influence Factors of Racing Strategies](#Influence-Factors-of-Racing-Strategies)\n    * [Racing Strategies as an Indicator for Future Injury](#Racing-Strategies-as-an-Indicator-for-Future-Injury)\n* [Conclusion and Recommendations](#Conclusion-and-Recommendations)\n* [References](#References)","metadata":{}},{"cell_type":"code","source":"import numpy as np # linear algebra\nimport pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\nfrom tqdm import tqdm\nfrom sklearn.metrics import mean_squared_error\nimport os\nfrom wand.image import Image as WImage\n\nimport matplotlib.pyplot as plt\nplt.rcParams.update({'font.size': 14})\nimport matplotlib.dates as mdates\nimport seaborn as sns\n\nfrom fpdf import FPDF\n\nfrom math import radians, cos, sin, asin, sqrt\n\nimport warnings # Supress warnings\nwarnings.filterwarnings(\"ignore\")\n\n# Set color theme\nhighlight_color = \"#dd0434\"\ncontrast_color = '#041e41'\n\ndef create_default_palette(n):\n    return sns.blend_palette(colors = [contrast_color, 'cornflowerblue', 'lightsteelblue'], n_colors=n)\n\nV_MAX = 22","metadata":{"_kg_hide-input":true,"execution":{"iopub.status.busy":"2022-11-09T14:11:48.823825Z","iopub.execute_input":"2022-11-09T14:11:48.824332Z","iopub.status.idle":"2022-11-09T14:11:50.823743Z","shell.execute_reply.started":"2022-11-09T14:11:48.824283Z","shell.execute_reply":"2022-11-09T14:11:50.822142Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Introduction\n\nThis analysis aims to find recommendations for injury prevention for racehorses. Related work suspects a relationship between racing characteristics and equine welfare. They also expect an opportunity to prevent horse injuries because they found that injuries accumulate over time. Thus, we will analyze whether horse injuries are related to previous racing strategies.\n\nFirst, we will analyze whether a horse's racing strategy changes for different race characteristics, such as venues, race surfaces, and race distances. Second, we will evaluate the optimal racing strategy for a given set of racing characteristics. Finally, we will analyze if a deviation from the optimal racing strategy indicates a looming injury. For this purpose, we will evaluate the racing history of horses injured or fatally injured during a race.\n\n# Methodology\n\nThe following analysis will heavily rely on the horses' racing velocities. For this purpose, we will first calculate the velocities from the provided GPS coordinates, then clean any outliers, and finally, synchronize the velocities to a common index for all unique race and horse combinations for an appropriate comparison.\n\n## Data Processing\n\nWe require information about horse injuries to evaluate the relationship between velocity patterns and horse injuries and deaths. For this purpose, we use two additional publicly available datasets on Kaggle to map horse injuries and fatalities to racing starts.\n- [Marília Prata (2022) “Equine Death and Breakdown”](https://www.kaggle.com/datasets/mpwolke/cusersmarildownloadsequinecsv)\n- [Mark Green (2022) “Big Data Derby 2022: Global Horse IDs and places”](https://www.kaggle.com/datasets/themarkgreen/big-data-derby-2022-global-horse-ids-and-places)","metadata":{}},{"cell_type":"code","source":"dtype_dict = {\"track_id\": object ,\n              \"race_number\" : np.int8, \n              \"program_number\" : object,\n              \"trakus_index\" : np.int16,  \n              \"distance_id\" : np.int16,  \n              \"course_type\" : object, \n              \"track_condition\" : object,\n              \"run_up_distance\" : np.int8,  \n              \"race_type\" : object, \n              \"purse\" : np.int32,  \n              \"post_time\" : np.int16,  \n              \"weight_carried\" : np.int16,  \n              \"jockey\" : object, \n              \"odds\" : np.int16,\n             }\n\n# horse/jockey race data\nnyra_start_table = pd.read_csv(\"../input/big-data-derby-2022/nyra_start_table.csv\") \nnyra_start_table.columns = ['track_id', 'race_date', 'race_number', 'program_number', 'weight_carried', 'jockey', 'odds', 'position_at_finish']\n\n# racetrack race data \nnyra_race_table = pd.read_csv(\"../input/big-data-derby-2022/nyra_race_table.csv\",\n                              dtype = dtype_dict)\n\nnyra_start_table[\"program_number\"] = nyra_start_table[\"program_number\"].map(lambda x: x.strip())\n\n# tracking data \nnyra_tracking_table = pd.read_csv(\"../input/big-data-derby-2022/nyra_tracking_table.csv\", \n                                  dtype = dtype_dict)\n    \nnyra_tracking_table[\"program_number\"] = nyra_tracking_table[\"program_number\"].map(lambda x: x.strip())\n\n# Create key columns\ndef create_race_id_column(df):\n    df[\"race_id\"] = df[[\"track_id\", \"race_date\", \"race_number\"]].astype(str).agg('_'.join, axis=1)\n    return df\n\ndef create_start_id_column(df):\n    df[\"start_id\"] = df[[\"track_id\", \"race_date\", \"race_number\", \"program_number\"]].astype(str).agg('_'.join, axis=1)\n    return df\n\nfor nyra_df in [ nyra_start_table, nyra_race_table, nyra_tracking_table]:\n    nyra_df = create_race_id_column(nyra_df)\n    \nfor nyra_df in [nyra_start_table, nyra_tracking_table]:\n    nyra_df = create_start_id_column(nyra_df)\n\n    \n##### External data #####\n\ninjury_df = pd.read_csv(\"../input/cusersmarildownloadsequinecsv/equine.csv\", \n                     delimiter=';', \n                     encoding='utf8') \n\n# Filter out injuries that are relevant to the provided challenge dataset\ninjury_df = injury_df[(injury_df.year == 2019) \n                & (injury_df.track.str.contains('NYRA')) \n                & ( injury_df.racing_type_description == \"Racing\") \n                & ( injury_df.jockey_driver.notna())\n                & ( injury_df.horse.notna())]\n\ninjury_df = injury_df.drop(['year', 'trainer', 'incident_description', 'racing_type_description', 'division', 'weather_conditions'] , axis=1)\n\ninjury_df[\"incident_date\"] = pd.to_datetime(injury_df[\"incident_date\"], format = \"%m/%d/%Y\")\ninjury_df[\"incident_date\"] = injury_df[\"incident_date\"].dt.strftime(\"%Y-%m-%d\")\ninjury_df[\"track\"] = injury_df[\"track\"].replace({\"Belmont Park (NYRA)\" : \"BEL\", \"Saratoga Racecourse (NYRA)\" :\"SAR\", \"Aqueduct Racetrack (NYRA)\": \"AQU\"})\ninjury_df[\"jockey_driver\"] = injury_df[\"jockey_driver\"].str.title()\n\n# [j for j in injury_df.jockey.unique() if j not in nyra_start_table.jockey.unique()]\njockey_dict = {\"Reyluis A. Gutierrez\" : \"Reylu Gutierrez\",\n               'Christina Bonilla' : 'Cristina Bonilla',\n               'Dyn O. Panell' : 'Dyn Panell',\n               'Benjamin Hernandez  Soto' : 'Benjamin Hernandez',\n               'Junior R. Alvarado' : 'Junior Alvarado',\n               'Carlos J. Hernandez **': 'Carlos J. Hernandez' , \n               'Christopher P. Decarlo' : 'Christopher P. DeCarlo',\n               'Rajiv C. Maragh' : 'Rajiv Maragh',\n               'Samuel Camacho' : 'Samuel Camacho Jr.',\n               'Irad Ortiz Jr' : 'Irad Ortiz Jr.',\n               'Javier J. Castellano' : 'Javier Castellano',\n               'Andrea C. Rodriguez-Caez' : 'Andrea C. Rodriguez',\n               'Jose A. Baez': 'Jose Baez', \n               #'Michael D. Mitchell',\n               #'Barry J. Foley',\n               'Chris M. Landeros' : 'Chris Landeros',\n               'Ricardo Santana Jr' :'Ricardo Santana Jr.',\n              # 'Gerard J. Galligan',\n               'Tyler S. Gaffalione' : 'Tyler Gaffalione',\n               'Pascasio(Paco) Lopez' :'Paco Lopez',\n               'Luis A. Rodriguez  Castro' :  'Luis A. Rodriguez Castro',\n               'Hector R. Diaz Jr' :  'Hector Rafael Diaz Jr.',\n               'Julio A. Correa Alamo' : 'Julio Correa',}\n\ninjury_df[\"jockey_driver\"] = injury_df[\"jockey_driver\"].replace(jockey_dict)\n\n#[j for j in injury_df.horse.unique() if j not in nyra_start_table.horse_name.unique()]\nhorse_dict = {'LIA SHIVANI' : 'Lia Shivani',\n 'unpredictable' : 'Unpredictable',\n 'gratto swing' : 'Gratto Swing',\n 'strike silver' : 'Strike Silver',\n 'tricky magician' : 'Tricky Magician',\n 'MARU' : 'Maru',\n 'LUTSKY' : 'Lutsky',\n 'Haloween Horror' : 'Halloween Horror',\n 'DREAMZAPPER' : 'Dreamzapper',\n 'FELONY MELANIE (KY)': 'Felony Melanie',\n 'That is Key' : 'That Is Key',\n 'CLEAR THE RAMP' : 'Clear the Ramp',\n 'BELLAMY BIGS' : 'Bellamy Bigs',\n 'puttheglassdown' : 'Puttheglassdown'}\n\ninjury_df[\"horse\"] = injury_df[\"horse\"].replace(horse_dict)\n\ninjury_df = injury_df.rename(columns = {\"incident_date\" : \"race_date\",\n                                  \"track\" : \"track_id\", \n                                  \"jockey_driver\" : \"jockey\", \n                                  \"horse\" : \"horse_name\"})\n\ninjury_df = injury_df.drop(['inv_location', 'death_or_injury'], axis=1)\ndisplay(injury_df.head(5).style.set_caption(\"Additional Dataset: Equine Death and Breakdown\"))\ninjury_df[\"injury\"] = True\n\n# Horse IDs\nhorse_ids = pd.read_csv(\"../input/big-data-derby-2022-global-horse-ids-and-places/horse_ids.csv\",\n                        index_col = [0])\n\nhorse_names = pd.read_csv(\"../input/big-data-derby-2022-global-horse-ids-and-places/horse_names.csv\",\n                          index_col = [0])\n\nhorse_ids = horse_ids.merge(horse_names, \n                            on = \"horse_id\", \n                            how = 'left')\n\nhorse_ids = horse_ids.rename(columns = {'race' : 'race_number', 'finishing_place' : 'position_at_finish'})\ndisplay(horse_ids.head(5).style.set_caption(\"Additional Dataset: Big Data Derby 2022: Global Horse IDs and places\"))\nhorse_ids = create_race_id_column(horse_ids)\n\n\n# Merge external data for original dataset\nnyra_start_table = nyra_start_table.merge(horse_ids, \n                                          on = [\"race_id\", \"program_number\", 'track_id', 'race_date', 'race_number', 'position_at_finish'], \n                                          how = \"left\")\n\nnyra_start_table = nyra_start_table.merge(injury_df, on = [\"race_date\", \"track_id\", \"horse_name\", \"jockey\"], how='left')\nnyra_start_table[\"injury\"] = nyra_start_table[\"injury\"].fillna(False)\n\ndel injury_df\ndel horse_ids\n\nnyra_tracking_table = nyra_tracking_table.merge(nyra_start_table[[\"race_id\", \"program_number\", \"incident_type\", \"injury\", \"horse_id\"]],\n                          on = [\"race_id\", \"program_number\"],\n                          how = 'left')","metadata":{"_kg_hide-input":true,"execution":{"iopub.status.busy":"2022-11-09T14:11:50.826460Z","iopub.execute_input":"2022-11-09T14:11:50.826945Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"Additionally, we will remove all steeplechase races from the analysis scope, as discussed in [this challenge's discussion forum](https://www.kaggle.com/competitions/big-data-derby-2022/discussion/344315). We double-checked that none of the injured horses had previously participated in a steeplechase race.","metadata":{}},{"cell_type":"code","source":"# Remove steeplechase races\nsteeplechase_races = nyra_race_table[nyra_race_table.course_type == 'M'].race_id.unique()\nnyra_race_table = nyra_race_table[nyra_race_table.course_type != 'M']\nnyra_start_table = nyra_start_table[~nyra_start_table.race_id.isin(steeplechase_races)]\nnyra_tracking_table = nyra_tracking_table[~nyra_tracking_table.race_id.isin(steeplechase_races)]\n\nprint(f'We evaluate racing data from {nyra_start_table.horse_id.nunique():,} unique horses across {nyra_start_table.start_id.nunique():,} starts and {nyra_race_table.race_id.nunique():,} races in 2019.\\n')\nprint(f'The racing data contains {len(nyra_tracking_table):,} tracking data points.\\n')\nprint(f'We evaluate {nyra_start_table.injury.sum()} incidents in 2019 out of which {len(nyra_start_table[nyra_start_table.incident_type == \"RACING INJURY\"])} were racing incidents and {len(nyra_start_table[nyra_start_table.incident_type == \"EQUINE DEATH\"])} were equine deaths.\\n')","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"## Feature Engineering\nSince this analysis aims to evaluate and compare the racing velocities, we will need to feature engineer the distances and velocities. Additionally, we will discuss how we synchronized the velocities across different starts to a common distance index to be able to perform operations, like taking the mean, on the data.\n\n### Calculating the Distance\n\nFor the following analysis, we will calculate the distance between two data points with the Haversine formula based on their coordinates.\n* GPS precision: most GPS devices are [accurate within 2 m](https://www.paj-gps.com/accuracy-and-challenges-of-gps-device/). That means if we measure a distance of, e.g., 5m between two data points, an error of up to 2 m significantly impacts the distance accuracy. However, we can't influence the accuracy of the GPS data.\n* Formula for calculating the distance: the Haversine formula can lead to inaccuracies in the calculated distances because the formula [assumes that the earth is a perfect sphere](https://www.geeksforgeeks.org/haversine-formula-to-find-distance-between-two-points-on-a-sphere/). However, [another notebook in this challenge](https://www.kaggle.com/code/jpmiller/vincenty-haversine-or-euclidean-does-it-matter) showed that the Haversine formula leads to similar results as the alternatives of Vincenty's and Euclidean formulas.","metadata":{}},{"cell_type":"code","source":"def haversine_distance(s_lat, s_lng, e_lat, e_lng):\n    # https://stackoverflow.com/questions/4913349/haversine-formula-in-python-bearing-and-distance-between-two-gps-points\n \n    R = 6373.0 # approximate radius of earth in km\n\n    s_lat = s_lat*np.pi/180.0                      \n    s_lng = np.deg2rad(s_lng)     \n    e_lat = np.deg2rad(e_lat)                       \n    e_lng = np.deg2rad(e_lng)  \n\n    d = np.sin((e_lat - s_lat)/2)**2 + np.cos(s_lat)*np.cos(e_lat) * np.sin((e_lng - s_lng)/2)**2\n\n    return 2 * R * np.arcsin(np.sqrt(d))","metadata":{"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"nyra_tracking_table['distance'] = np.nan\nnyra_tracking_table['distance_cum'] = np.nan\nnyra_tracking_table['velocity'] = np.nan\n\nnyra_tracking_table = nyra_tracking_table.sort_values(by=['start_id', 'trakus_index']).reset_index(drop=True)\n\nnyra_tracking_table['latitude_prev'] = nyra_tracking_table['latitude'].shift(1)\nnyra_tracking_table['longitude_prev'] = nyra_tracking_table['longitude'].shift(1)\nnyra_tracking_table['latitude_prev'] = np.where(nyra_tracking_table['trakus_index'] == 1, nyra_tracking_table['latitude'], nyra_tracking_table['latitude_prev'])\nnyra_tracking_table['longitude_prev'] = np.where(nyra_tracking_table['trakus_index'] == 1, nyra_tracking_table['longitude'], nyra_tracking_table['longitude_prev'])\n\nnyra_tracking_table['distance'] = haversine_distance(nyra_tracking_table['latitude'].values, \n                                                     nyra_tracking_table['longitude'].values,\n                                                     nyra_tracking_table['latitude_prev'].values, \n                                                     nyra_tracking_table['longitude_prev'].values)*1000\nnyra_tracking_table[['start_id', 'trakus_index', 'latitude', 'longitude', 'latitude_prev', 'longitude_prev', 'distance']].head().style.set_properties(subset = [\"distance\"],\n                        **{\"background-color\":highlight_color,  \n                           \"color\" : \"white\"}).set_caption(\"Tracking Table with Calculated Distance from GPS Coordinates\")","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"### Calculating the Velocity\nWe can calculate the velocity with the distance between two data points and the time interval between measurements.\n\nAlthough the measurement frequency is assumed to be every 0.25 s in the [dataset description](https://www.kaggle.com/competitions/big-data-derby-2022/data), we found that the resulting velocities were implausible during the validation process. While an average racehorse's maximum velocities are between 17 and 19 m/s [1, 4, 5] with a [top velocity run by a thoroughbred at 19.66 m/s](https://horseracingsense.com/speed-worlds-fastest-horses/), the maximum velocities calculated with a time interval of 0.25 s were above 20m/s. We found that **a value of 0.28 s results in more plausible velocity values**, which was confirmed in [this challenge's discussion forum](https://www.kaggle.com/competitions/big-data-derby-2022/discussion/343581).","metadata":{}},{"cell_type":"code","source":"trakus_index_interval = 0.28\nnyra_tracking_table['velocity'] = nyra_tracking_table['distance'] / (trakus_index_interval)","metadata":{"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"nyra_tracking_table[['start_id', 'trakus_index', 'latitude', 'longitude',  'distance', 'velocity']].head().style.set_properties(subset = [\"velocity\"],\n                        **{\"background-color\":highlight_color,  \n                           \"color\" : \"white\"}).set_caption(\"Tracking Table with Calculated Velocity\")","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"Note that the calculated distances and velocities are only partially accurate due to the inaccuracy of GPS precision, the Haversine formula, and the measurement frequency approximation. **However, for the following analysis, the relative and not the absolute velocities will be of interest. Thus, we accept minor inaccuracies in the calculated velocities.**","metadata":{}},{"cell_type":"markdown","source":"### Synchronize Velocities to Common Distance Index\n\nFor the following analysis, we will compare the velocity profiles over the race distance, similarly to related work [1, 4].\nTo compare different starts and perform operations like taking the mean, we need to transform the velocities from a common time index (`trakus_index`) to a common distance index (`distance_cum`). We will synchronize the data points from a 0.28 s time interval to a 10 m distance interval and interpolate the velocities between them.\n\nDuring this process, we replaced outliers with calculated velocities of over 30 m/s with NaN values to interpolate through them.\n\nThe left graph in the following plots, shows the difficulty of taking the mean between two starts based on the common time index. The right graph shows that with the synchronization of the velocities to a common distance index, we are now able to compare different starts based on the distance.","metadata":{}},{"cell_type":"code","source":"# remove outliers before interpolation\nnyra_tracking_table.velocity = np.where(nyra_tracking_table.velocity > 30, np.nan, nyra_tracking_table.velocity)\n\n# Calculate cumulative distance \nnyra_tracking_table['distance_cum'] = nyra_tracking_table.groupby(['race_id', 'program_number'])['distance'].transform(pd.Series.cumsum)\n\nr = pd.Index(np.arange(0, 3250, 10), name='distance_cum')\nnyra_velocities = pd.DataFrame()\nnyra_velocities.index = r\n\nfor s in tqdm(nyra_tracking_table.start_id.unique()):\n    temp = nyra_tracking_table[(nyra_tracking_table.start_id == s) & (nyra_tracking_table.distance > 0)]\n    d = temp.set_index('distance_cum')\n    t = d.index\n    nyra_velocities[s] = temp.set_index('distance_cum').reindex(t.union(r))['velocity'].interpolate('index').loc[r].values\n\n\nnyra_velocities = nyra_velocities.fillna(0)\nnyra_velocities = nyra_velocities.unstack().to_frame()\nnyra_velocities.columns = ['velocity']\nnyra_velocities.reset_index(drop = False, inplace=True)\nnyra_velocities.columns = ['start_id', 'distance_cum', 'velocity']\nnyra_velocities['race_id'] = nyra_velocities['start_id'].map(lambda x: '_'.join(x.split('_')[:-1]))\n\nfurlong = 201.168\nnyra_race_table['distance_m'] = nyra_race_table['distance_id']/100 * furlong\n\nnyra_velocities = nyra_velocities.merge(nyra_race_table, on='race_id', how='left')\nnyra_velocities = nyra_velocities.merge(nyra_start_table[['start_id', 'position_at_finish', 'horse_id', 'injury', 'incident_type']], on = 'start_id', how = 'left')\n\nnyra_velocities['velocity'] = np.where(nyra_velocities['distance_cum'] > nyra_velocities['distance_m'],\n                                      np.nan,\n                                      nyra_velocities['velocity'])\n\nnyra_velocities['distance_cum'] = np.where(nyra_velocities['distance_cum'] > nyra_velocities['distance_m'],\n                                      nyra_velocities['distance_m'],\n                                      nyra_velocities['distance_cum'])\n\n\nnyra_velocities['acceleration'] = nyra_velocities['velocity']/0.25\nnyra_velocities['distance_percentage'] = nyra_velocities['distance_cum'] / nyra_velocities['distance_m'] * 100","metadata":{"_kg_hide-input":true,"_kg_hide-output":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"fig, ax = plt.subplots(1, 2, figsize=(14,6))\n\nsns.lineplot(data = nyra_tracking_table[nyra_tracking_table.start_id == 'AQU_2019-01-01_1_1'],\n                                    x = 'distance_cum',\n                                    y = 'velocity',\n            marker='o', color=highlight_color, label='AQU_2019-01-01_1_1', ax=ax[0])\n\nsns.lineplot(data = nyra_tracking_table[nyra_tracking_table.start_id == 'AQU_2019-01-01_1_2'],\n                                    x = 'distance_cum',\n                                    y = 'velocity',\n            marker='o', color=contrast_color, label='AQU_2019-01-01_1_2', ax=ax[0])\nax[0].vlines(nyra_tracking_table[nyra_tracking_table.start_id == 'AQU_2019-01-01_1_1'].distance_cum, 0, V_MAX, color = highlight_color, label = 'before injury', linewidth =1, linestyle='--')\nax[0].vlines(nyra_tracking_table[nyra_tracking_table.start_id == 'AQU_2019-01-01_1_2'].distance_cum, 0, V_MAX, color = contrast_color, label = 'before injury', linewidth =1, linestyle='--')\nax[0].set_title('Before Synchronization to Common Index')\nsns.lineplot(data = nyra_velocities[nyra_velocities.start_id == 'AQU_2019-01-01_1_1'],\n                                    x = 'distance_cum',\n                                    y = 'velocity',\n            marker='o', color=highlight_color, label='AQU_2019-01-01_1_1', ax=ax[1])\n\nsns.lineplot(data = nyra_velocities[nyra_velocities.start_id == 'AQU_2019-01-01_1_2'],\n                                    x = 'distance_cum',\n                                    y = 'velocity',\n            marker='o', color=contrast_color, label='AQU_2019-01-01_1_2', ax=ax[1])\nax[1].vlines(nyra_velocities[nyra_velocities.start_id == 'AQU_2019-01-01_1_1'].distance_cum, 0, V_MAX, color = 'black', linewidth =1, linestyle='--')\nax[1].set_title('After Synchronization to Common Index')\n\nfor i in range(2):\n    ax[i].set_xlim([0,100])\n    ax[i].set_ylim([0, V_MAX])\n    ax[i].set_ylabel('Velocity [m/s]')\n    ax[i].set_xlabel('Race Distance [m]')\n\nplt.tight_layout()\nplt.show()","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"nyra_velocities['course_type_coarse'] = nyra_velocities['course_type'].replace({'I' : 'T', 'O' : 'T'})\nnyra_race_table['course_type_coarse'] = nyra_race_table['course_type'].replace({'I' : 'T', 'O' : 'T'})","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"temp = nyra_start_table.groupby('race_id').position_at_finish.max().to_frame()\ntemp.reset_index(drop=False, inplace=True)\ntemp['relative_position_at_finish'] = 'last'\nnyra_start_table = nyra_start_table.merge(temp, on =['race_id', 'position_at_finish'], how='left')\nnyra_start_table['relative_position_at_finish'] = np.where(nyra_start_table.position_at_finish == 1, 'first', nyra_start_table['relative_position_at_finish'])\n\nmax_pos = nyra_start_table.groupby('race_id').position_at_finish.max().to_frame()\nmax_pos.columns = ['last_position_in_race']\nnyra_start_table = nyra_start_table.merge(max_pos, on='race_id', how='left')\nnyra_start_table['position_at_finish_overall'] = nyra_start_table['position_at_finish'].astype(str) +'/'+ nyra_start_table['last_position_in_race'].astype(str)\n\nnyra_velocities = nyra_velocities.merge(nyra_start_table[['start_id', 'relative_position_at_finish', 'position_at_finish_overall' ]], on='start_id', how='left')\nnyra_start_table = nyra_start_table.merge(nyra_race_table[['distance_id', 'course_type','course_type_coarse',  'track_condition','race_id']], on='race_id', how='left')","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"y = nyra_velocities[nyra_velocities.position_at_finish == 1].groupby(['distance_id', 'course_type_coarse', 'distance_cum']).velocity.mean().to_frame().reset_index(drop=False)\ny_pred = nyra_velocities[nyra_velocities.velocity.notna()].pivot(index = 'distance_cum', columns = 'start_id').velocity.T\nerrors_df = pd.DataFrame(columns = ['start_id', 'mse'])\nfor c in nyra_start_table.course_type_coarse.unique():\n    for d in nyra_start_table.distance_id.unique():\n\n        X = nyra_start_table[(nyra_start_table.distance_id == d) & (nyra_start_table.course_type_coarse == c)].start_id.unique()\n\n        errors = []\n        for x in X:\n            error = mean_squared_error(y[(y.distance_id == d) & (y.course_type_coarse == c)& (y.velocity.notna())].velocity.values, \n                                         y_pred.loc[x][y_pred.loc[x].notna()])\n            errors.append(error)\n\n        errors_df = pd.concat([errors_df, pd.DataFrame({'start_id' : X, 'mse' : errors})], axis=0)\nnyra_start_table = nyra_start_table.merge(errors_df, on='start_id', how='left')","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"nyra_start_table.to_csv('nyra_start_table_preprocessed.csv', index = False)\nnyra_velocities.to_csv('nyra_velocities_preprocessed..csv', index = False)\n\n# No longer needed for further analysis\ndel nyra_tracking_table, nyra_race_table \n\nnyra_start_table[\"race_date\"] = pd.to_datetime(nyra_start_table[\"race_date\"])\nnyra_velocities[\"race_date\"] = pd.to_datetime(nyra_velocities[\"race_date\"])","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Experiments\n\nThe following experiments explore whether horse injuries are related to previous racing strategies. For this purpose, we will analyze whether racing strategies change for different race characteristics, such as venues, race surfaces, and race distances, in the first set of experiments. We will then evaluate the optimal racing strategy for a given set of racing characteristics based on these results. In the second set of experiments, we will analyze if a deviation from the optimal racing strategy indicates a looming injury.\n\n## Influencing Factors of Racing Strategies\nRelated work  [1, 2, 3, 4] suggests that racing strategies depend on different race characteristics. Thus the research question for this section is:\n\n**\"Do racing strategies change for different race characteristics? If yes, what is the best racing strategy for a specific race?\"**\n\nFirst, we will analyze if and how much different racing conditions impact racing strategies. For the analysis, we will consider the following factors based on related work [1, 2, 3, 4]:\n* race distance \n* track \n* track type\n* track condition \n* finish position \n\n### Race Distance\nRelated works [1, 3, 4] observed that horse racing strategies depend on the race distance. Below you can see how the average velocity profiles change according to the race distances. Additionally, you can see the distribution of maximum velocities and velocities at the finish line for each race distance.\n","metadata":{}},{"cell_type":"code","source":"nyra_velocities_no_incident = nyra_velocities[(~nyra_velocities.distance_id.isin([450, 1050, 1400, 1600])) & (nyra_velocities.incident_type.isna())]\n\ntemp = nyra_velocities_no_incident.copy()\ntemp = temp.groupby(['distance_id', 'distance_cum']).velocity.mean().to_frame()\ntemp.columns = ['velocity']\ntemp.reset_index(drop=False, inplace=True)\n\nfig, ax = plt.subplots(1, 1, figsize=(12,6))\nsns.lineplot(data=temp,\n            x='distance_cum',\n            y = 'velocity',\n            hue='distance_id',\n             palette = create_default_palette(temp.distance_id.nunique()))\n\nax.set_ylim([0, V_MAX])\nax.set_ylabel('Velocity [m/s]')\nax.set_xlim([0, 2500])\nax.set_xlabel('Race Distance [m]')\nax.set_title('Velocity Profile by Race Distance')\nax.spines['top'].set_visible(False)\nax.spines['right'].set_visible(False)\nplt.legend(bbox_to_anchor=(1.04, 0.5), loc=\"center left\")\nplt.show()\n\ntemp = nyra_velocities_no_incident.copy()\ntemp = temp[(temp.distance_cum > 100) & (temp.distance_cum < 500)].groupby(['distance_id', 'start_id']).velocity.max().to_frame().reset_index(drop=False)\ntemp.columns = ['distance_id', 'start_id', 'Maximum']\n\n\ntemp1 = nyra_velocities_no_incident.copy()\ntemp1 = temp1.groupby(['distance_id', 'start_id']).velocity.last().to_frame().reset_index(drop=False)\ntemp1.columns = ['distance_id', 'start_id', 'At Finish Line']\n\ntemp = temp.merge(temp1, on=['distance_id', 'start_id'], how='left')\ntemp = temp.melt(id_vars = ['distance_id', 'start_id'])\ntemp = temp.rename(columns = {'variable' : 'Velocity'})\n\n\nfig, ax = plt.subplots(1, 1, figsize=(12,6))\nsns.boxplot(data=temp, x='distance_id', y='value', hue='Velocity', fliersize=0, palette=[highlight_color, contrast_color])\nax.set_ylim([0, V_MAX])\nax.set_ylabel('Velocity [m/s]')\nax.set_xlabel('Distance ID')\nax.set_title('Distribution of Maximum Velocity and Velocity At Finish Line by Race Distance')\nplt.legend(bbox_to_anchor=(1.04, 0.5), loc=\"center left\")\n\nplt.show()","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"We can observe the same effect in this analysis. In general, the racing strategy to start strong in the beginning to reach a maximum velocity is the same across all distances, as also observed in [1]. Additionally, we can observe the following:\n* The longer the race distance, the smaller the maximum velocity.\n* The longer the race distance, the smaller the difference between the maximum velocity and the velocity at the finish line.\n\nFor the following analysis, all velocity patterns were evaluated for each race distance. But for the purpose of easier understanding, we will only showcase one example of `distance_id`= 800, which is one of the most common race distances.\n\n### Race Surface\nRelated work [3] observed that horse injuries depend on the racing surface. Therefore, we will also analyze if the racing strategies depend on the racing surface. \nBelow you can see how the average velocity profiles change according to the track surface for all races with a distance ID of 800. On the left side, you can see the track surface classes dirt (D), inner turf (I), turf (T), and outer turf (O). On the right side, you can see the coarse track surface classes dirt (D) and turf (T), including inner and outer turf tracks.","metadata":{}},{"cell_type":"code","source":"d = 800\nV_MAX = 20\ndef plot_velocity_profile(df, hue, palette, ax):\n    df = df.groupby([hue, 'distance_cum']).velocity.mean().to_frame()\n    df.columns = ['velocity']\n    df.reset_index(drop=False, inplace=True)\n\n    sns.lineplot(data=df,\n                 x='distance_cum',\n                 y = 'velocity',\n                 hue=hue,\n                 palette = palette, \n                 ax=ax)\n    ax.set_ylim([0, V_MAX])\n    ax.set_ylabel('Velocity [m/s]')\n    ax.set_xlim([0, 1700])\n    ax.set_xlabel('Race Distance [m]')\n    ax.spines['top'].set_visible(False)\n    ax.spines['right'].set_visible(False)\n    \nfig, ax = plt.subplots(1, 2, figsize=(16,6))\ndf = nyra_velocities_no_incident[nyra_velocities_no_incident.distance_id == d]\n\nplot_velocity_profile(df,\n                              'course_type', \n                      {'D' : highlight_color, \n                       'I' : create_default_palette(3)[0],\n                        'T' : create_default_palette(3)[2],\n                        'O' : create_default_palette(3)[1],\n                       }, \n                      ax[0])\n\n\nplot_velocity_profile(df,\n                      'course_type_coarse', \n                      {'D' : highlight_color, \n                        'T' : contrast_color,}, \n                      ax[1])\n\nax[0].set_title('Velocity Profile by Course Type')\nax[1].set_title('Velocity Profile by Coarse Course Type (Turf or Dirt)')\n\nplt.tight_layout()\nplt.show()","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"In an initial analysis, it was observed that racing strategies on inner turf (I), turf (T), and outer turf (O) are very similar. Therefore for further analysis, turf (T) includes inner turf (I) and outer turf (O) as well. We can observe the following:\n* The racing strategies at the beginning of the race are similar on turf and dirt tracks.\n* The velocity decrease over the race is stronger on dirt tracks than on turf tracks.\n* The velocity at the finish line is lower on dirt than on turf tracks.\n\n### Track Conditions\nRelated work [2] discussed that moisture influences the shear strength of a dirt track, which is essential to the safety of a racing surface. Therefore, we will analyze if the racing strategies depend on the track condition. \nBelow you can see how the average velocity profiles change according to the track condition for all races with a distance ID of 800 on dirt and turf tracks.","metadata":{}},{"cell_type":"code","source":"fig, ax = plt.subplots(1, 2, figsize=(16,6))\n\nplot_velocity_profile(nyra_velocities_no_incident[(nyra_velocities_no_incident.distance_id == d) & (nyra_velocities_no_incident.course_type_coarse == 'D')],\n                                          'track_condition', \n                                          {'FT ' : create_default_palette(4)[0],\n                                   'GD ' : create_default_palette(4)[1],\n                                   'SY ' : create_default_palette(4)[2],\n                                   'MY ' : create_default_palette(4)[3],}, ax[0])\n\n\nplot_velocity_profile(nyra_velocities_no_incident[(nyra_velocities_no_incident.distance_id == d) & (nyra_velocities_no_incident.course_type_coarse == 'T')],\n                                          'track_condition', \n                                          {\n                                   'FM ' : create_default_palette(4)[0],\n                                   'GD ' : create_default_palette(4)[1],\n                                   'YL ' : create_default_palette(4)[2],\n                                   'SF ' : create_default_palette(4)[3],}, ax[1])\n\nax[0].set_title('Velocity Profile by Track Condition on Dirt')\nax[1].set_title('Velocity Profile by Track Condition on Turf')\n\nplt.tight_layout()\nplt.show()","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"We can observe the following:\n* The higher the moisture content on the dirt track, the smaller the velocity at the finish line.\n* The higher the moisture content on the turf track, the smaller the velocity at the finish line.\n* However, the divergence between the velocities at the finish line is smaller than other factors like the surface type.\n\n### Track ID\nRelated work [2] discussed that race track characteristics influence racing strategies. It was observed that the velocity decreases in the bends and increases going out of the bend [2]. Therefore, we will analyze if the racing strategies depend on the race track. \nBelow you can see how the average velocity profiles change according to the track ID for all races with a distance ID of 800 on dirt and turf tracks.","metadata":{}},{"cell_type":"code","source":"fig, ax = plt.subplots(1, 2, figsize=(16,6))\n\nplot_velocity_profile(nyra_velocities_no_incident[(nyra_velocities_no_incident.distance_id == d) & (nyra_velocities_no_incident.course_type_coarse == 'D')],\n                                          'track_id', \n                                          {'AQU' : highlight_color, 'BEL' : contrast_color, 'SAR' : 'darkgrey'}\n                                          , ax[0])\n\n\nplot_velocity_profile(nyra_velocities_no_incident[(nyra_velocities_no_incident.distance_id == d) & (nyra_velocities_no_incident.course_type_coarse == 'T')],\n                                          'track_id', \n                                         {'AQU' : highlight_color, 'BEL' : contrast_color, 'SAR' : 'darkgrey'}\n                                          , ax[1])\n\nax[0].set_title('Velocity Profile by Track ID on Dirt')\nax[1].set_title('Velocity Profile by Track ID on Turf')\n\nplt.tight_layout()\nplt.show()","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"We can observe the following:\n* There are minor deviations in the racing patterns. Especially for longer races, we can observe a slight dip in velocities for the AQU track.\n* However, the maximum reached velocity shortly after the start of the race and the velocity at the finish line are similar across all three tracks.\n* However, the difference between the velocity patterns on different tracks is slight compared to other influence factors.\n\n### Position at Finish\nRelated work [1, 4] observed that the racing velocities at the beginning of a race are similar across horses. Instead, the velocity for the second half of the race decides over the horses' finish position, where the horse that slows down the least at the end is the one that wins the race [1, 4]. Therefore, we will analyze how the racing velocities influence the finish position. Below you can see how the average velocity profiles change according to the finish position for all races with a distance ID of 800.","metadata":{}},{"cell_type":"code","source":"temp = nyra_velocities_no_incident[(nyra_velocities_no_incident.distance_id == d)]\n\nfig, ax = plt.subplots(1, 1, figsize=(9,6))\n\nplot_velocity_profile(temp,\n                                          'position_at_finish', \n                                          create_default_palette(temp.position_at_finish.nunique()),\n                      ax)\nax.set_title('Velocity Profile by Position At Finish')\n\nplt.legend(bbox_to_anchor=(1.04, 0.5), loc=\"center left\")\nplt.tight_layout()\nplt.show()","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"We can observe the following:\n* During the race's first half, the velocity patterns are very similar.\n* During the last half of the race, the velocity patterns start to diverge. The horse that slows down the least at the end of the race wins.\n\n### Discussion\n\nBased on related work [1, 2, 4], we have analyzed the influence of five factors on a horse's velocity pattern: track id, race distance, track type, track condition, and finish position. While we could observe that all analyzed factors influence the horse's velocity pattern, some have a bigger impact than others.\n\nMajor impact factors were:\n* race distance\n* track surface\n* finish position\n\nMinor impact factors were:\n* track id\n* track condition (level of moisture)\n\nFor the following analysis, we will **create optimal race profiles based on the major impacting factors** and disregard the minor impact factors. However, if a more extensive database was available, more detailed velocity profiles, including minor impact factors, could be analyzed in future work.\n\n## Racing Strategies as an Indicator for Future Injury\n\nRelated work [2, 5] found that the most significant factors for fatal equine injuries were pre-existing injuries and the material fatigue of bone, which accumulates over multiple races. Additionally, it was observed that changes in velocity over career race starts were associated with an increased risk of equine injuries [5]. Therefore, we will analyze whether a deviation from the optimal velocity pattern can be observed before an injury or death incident. Thus the research question for this section is:\n\n**\"Is there a relationship between racing injuries and racing strategies in previous races?\"**\n\nIn the following analysis, the optimal velocity pattern is the average velocity profile of the horses that finished in 1st place at the observed race distance and track type. For reference, we will also visualize the velocity pattern of the horse that finished in last place. **We measure a horse's velocity pattern deviation during a race from the optimal velocity pattern with the Mean Squared Error (MSE) metric**.\n\nReports are created for all horses that had an incident with an incident type of either \"RACING INJURY\" or \"EQUINE DEATH\" and where the horse's first race in 2019 was not an incident. Overall, 13 reports were generated for 2 \"RACING INJURY\" and 11 for \"EQUINE DEATH.\"","metadata":{}},{"cell_type":"code","source":"def get_race_characteristics(r):\n    d = nyra_velocities[nyra_velocities.race_id == r].distance_id.unique()[0]\n    c = nyra_velocities[nyra_velocities.race_id == r].course_type_coarse.unique()[0]\n    return d, c\n\ndef plot_race_edges(d, c, ax):\n\n    temp = nyra_velocities[(nyra_velocities.relative_position_at_finish.notna()) \n                           &  (nyra_velocities.distance_id == d) \n                           & (nyra_velocities.course_type_coarse == c)]\n\n    temp = temp.groupby(['relative_position_at_finish', 'distance_cum']).velocity.mean().to_frame()\n    temp.columns = ['velocity']\n    temp.reset_index(drop=False, inplace=True)\n    sns.lineplot(data = temp,\n                x = 'distance_cum',\n                y = 'velocity',\n                hue = 'relative_position_at_finish',\n                palette = {'first' : 'grey', 'last' : 'lightgrey'}, ax=ax)\n\ndef plot_start_id(s, ax):\n    temp = nyra_velocities[nyra_velocities.start_id == s]\n    if (temp.injury.unique()[0] == 0):\n        color = contrast_color\n    else:\n        color = highlight_color\n    sns.lineplot(data = temp,\n                    x = 'distance_cum',\n                    y = 'velocity',\n                    color = color, \n                ax= ax)\n\ndef plot_start_id_comparison(x, path):\n    d, c = get_race_characteristics(x.race_id)\n    fig, ax = plt.subplots(figsize=(8, 4))\n    plot_race_edges(d, c, ax)\n    plot_start_id(x.start_id, ax)\n    ax.set_ylim([0, V_MAX])\n    ax.set_xlim([0, 2500])\n    ax.spines['top'].set_visible(False)\n    ax.spines['right'].set_visible(False)\n\n    ax.set_xlabel('Race Distance [m]')\n    ax.set_ylabel('Velocity [m/s]')\n    ax.set_title(f\"{x.race_id} {x.course_type} ({x.track_condition}) {x.position_at_finish_overall} (MSE: {x.mse:.3f})\")    \n    \n    plt.savefig(f'{path}/racing_{x.start_id}.png', transparent=False,  facecolor='white')\n    plt.close()\n    \ndef plot_racing_timeline(temp, h, path):\n    fig, ax = plt.subplots(figsize=(14, 1))\n\n    ax.vlines(temp[temp.injury_timing < 0][\"race_date\"], -1, 1, color = contrast_color, label = 'before injury', linewidth =3)\n    ax.vlines(temp[temp.injury_timing == 0][\"race_date\"], -1, 1, color = highlight_color, label = 'injury', linewidth =3)\n    ax.vlines(temp[temp.injury_timing > 0][\"race_date\"], -1, 1, color = 'grey', label = 'after injury')\n\n    ax.set_xlim(np.array(['2019-01-01', '2019-12-31'],\n                      dtype='datetime64'))\n    ax.xaxis.set_major_locator(mdates.MonthLocator())\n    ax.xaxis.set_major_formatter(mdates.DateFormatter(\"%b\"));\n    ax.xaxis.set_minor_locator(mdates.DayLocator(interval=7))\n    ax.get_yaxis().set_visible(False)\n    for spine in [\"left\", \"top\", \"right\"]:\n        ax.spines[spine].set_visible(False)\n    plt.title(\"Racing Timeline 2019\")\n\n    plt.savefig(f'{path}/racing_history.png', transparent=False,  facecolor='white', bbox_inches=\"tight\")\n    plt.close()\n\n# Make directories to save artifacts \nos.makedirs(\"./img/\")\nos.makedirs(\"./pdf/\")\n\nLINEWIDTH = 6\n\nincidents = nyra_start_table[nyra_start_table.injury].horse_id.unique()\ninjured_horses = []\nfor h in (incidents):\n    temp = nyra_start_table[nyra_start_table.horse_id == h].sort_values(by='race_date')\n\n    if (temp.incident_type.values[0] != temp.incident_type.values[0]):\n        incident_type = temp[temp.incident_type.notna()].incident_type.values\n        \n        if (('EQUINE DEATH' in incident_type) | ('RACING INJURY' in incident_type)):\n            injured_horses.append(int(h))\n            \n            \nfor h in (injured_horses):\n    temp = nyra_start_table[nyra_start_table.horse_id == h].sort_values(by='race_date')\n\n    horse_name = temp[temp.incident_type.notna()].horse_name.values[0]\n    incident_type = temp[temp.incident_type.notna()].incident_type.values[0]\n\n    path = f\"./img/horse_{h}\"\n    if not os.path.exists(path):\n        os.makedirs(path)\n\n    injury_date = temp[temp.injury].race_date.unique()[0]\n    temp['injury_timing'] = temp.race_date.map(lambda x: 0 if x == injury_date else (-1 if x < injury_date else 1))\n\n\n\n    pdf = FPDF()\n    pdf.add_page()\n    pdf.set_font('Arial', 'B', 16)\n    pdf.cell(w = 0,\n             h = LINEWIDTH, \n             txt = \"Injury Analysis Report\", \n             border = 0, \n             ln = 1,\n             align = '', fill = False, link = '')\n    pdf.ln(LINEWIDTH)\n\n    pdf.set_font('Arial', 'B', 10)\n\n    pdf.cell(w = 30, h = LINEWIDTH, txt = f\"Horse ID:\", \n             border = 0, ln = 0, align = 'L', fill = False, link = '')\n    pdf.cell(w = 50, h = LINEWIDTH, txt = str(h), \n             border = 0, ln = 0, align = 'L', fill = False, link = '')\n    pdf.cell(w = 80, h = LINEWIDTH, txt = '', \n             border = 0, ln = 0, align = '', fill = False, link = '')\n    pdf.set_fill_color(r= 4, g= 3, b = 65)        \n    pdf.set_text_color(r= 255, g= 255, b = 255)\n    pdf.cell(w = 30, h = LINEWIDTH, txt = 'Before Incident', \n             border = 0, ln = 1, align = 'C', fill = True, link = '')        \n    pdf.set_text_color(r= 0, g= 0, b = 0)\n\n\n    pdf.cell(w = 30, h = LINEWIDTH, txt = f\"Horse Name:\", \n             border = 0, ln = 0, align = 'L', fill = False, link = '')\n    pdf.cell(w = 50, h = LINEWIDTH, txt = horse_name, \n             border = 0, ln = 0, align = 'L', fill = False, link = '')\n    pdf.cell(w = 80, h = LINEWIDTH, txt = '', \n             border = 0, ln = 0, align = '', fill = False, link = '')\n    pdf.set_fill_color(r= 221, g= 4, b = 52) \n    pdf.set_text_color(r= 255, g= 255, b = 255)\n    pdf.cell(w = 30, h = LINEWIDTH, txt = 'Incident', \n             border = 0, ln = 1, align = 'C', fill = True, link = '')        \n    pdf.set_text_color(r= 0, g= 0, b = 0)\n\n    pdf.cell(w = 30, h = LINEWIDTH, txt = f\"Incident Type:\", \n             border = 0, ln = 0, align = 'L', fill = False, link = '')\n    pdf.cell(w = 50, h = LINEWIDTH, txt = incident_type, \n             border = 0, ln = 0, align = 'L', fill = False, link = '')\n    pdf.cell(w = 80, h = LINEWIDTH, txt = '', \n             border = 0, ln = 0, align = '', fill = False, link = '')\n    pdf.set_fill_color(r= 128, g= 128, b = 128)\n    pdf.set_text_color(r= 255, g= 255, b = 255)\n    pdf.cell(w = 30, h = LINEWIDTH, txt = 'After Incident', \n             border = 0, ln = 1, align = 'C', fill = True, link = '')\n    pdf.set_text_color(r= 0, g= 0, b = 0)\n\n\n    pdf.ln(LINEWIDTH)\n\n    pdf.cell(25, LINEWIDTH, 'Race Date', 1, 0, 'C')\n    pdf.cell(20, LINEWIDTH, 'Track', 1, 0, 'C')\n    pdf.cell(20, LINEWIDTH, 'Distance', 1, 0, 'C')\n    pdf.cell(30, LINEWIDTH, 'Course Type', 1, 0, 'C')\n    pdf.cell(30, LINEWIDTH, 'Track Condition', 1, 0, 'C')\n    pdf.cell(30, LINEWIDTH, 'Finish Position', 1, 0, 'C')\n    pdf.cell(30, LINEWIDTH, 'MSE', 1, 1, 'C')\n\n    pdf.set_font('Arial', '', 10)\n    for i in range(0, len(temp)):\n        if (temp['injury_timing'].iloc[i] == 0):\n            pdf.set_text_color(r= 221, g= 4, b = 52) \n        elif (temp['injury_timing'].iloc[i] < 0):\n            pdf.set_text_color(r= 4, g= 3, b = 65)\n        else:\n            pdf.set_text_color(r= 128, g= 128, b = 128)\n\n\n        pdf.cell(25, LINEWIDTH, (temp['race_date'].iloc[i]).strftime(\"%Y-%m-%d\"), 1, 0, 'C')            \n        pdf.cell(20, LINEWIDTH, '%s' % (str(temp['track_id'].iloc[i])), 1, 0, 'C')\n        pdf.cell(20, LINEWIDTH, '%s' % (str(temp['distance_id'].iloc[i])), 1, 0, 'C')\n        pdf.cell(30, LINEWIDTH, '%s' % (str(temp['course_type'].iloc[i])), 1, 0, 'C')\n        pdf.cell(30, LINEWIDTH, '%s' % (str(temp['track_condition'].iloc[i])), 1, 0, 'C')\n        pdf.cell(30, LINEWIDTH, '%s' % (str(temp['position_at_finish_overall'].iloc[i])), 1, 0, 'C')\n        pdf.cell(30, LINEWIDTH, f\"{temp['mse'].iloc[i]:.3f}\", 1, 1, 'C')\n\n    pdf.ln(LINEWIDTH)\n\n    pdf.set_font('Arial', '', 12)\n    pdf.set_text_color(r= 1, g= 1, b = 1)\n\n    plot_racing_timeline(temp, h, path)\n    pdf.image(f'{path}/racing_history.png', x = 10, y = None, w = 180, h = 0, type = 'PNG', link = '')\n    pdf.ln(LINEWIDTH)\n\n\n    for i, s in enumerate(temp[temp.race_date <= injury_date].start_id.values):\n        plot_start_id_comparison(temp.iloc[i], path)\n        pdf.image(f'./img/horse_{h}/racing_{s}.png', x = 10, y = None, w = 100, h = 0, type = 'PNG', link = '')\n        pdf.ln(LINEWIDTH)\n\n    pdf.output(f'./pdf/analysis_report_horse_id_{h}.pdf', 'F')\n    ","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"### Case Study: Kulin Rock (Horse ID 3023)\n\nWe will analyze one of the 13 generated reports.\n\nThe horse Kulin Rock was injured during a race on the SAR track on July 19th, 2019. Before the incident, the horse participated in two races in 2019.\n","metadata":{}},{"cell_type":"code","source":"img = WImage(filename=\"./pdf/analysis_report_horse_id_3023.pdf\", resolution=500, width=100)\nimg","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"Observations of the first race (two races before the incident):\n* Relatively close to optimal velocity pattern (MSE 0.507)\n* Reached maximum velocity at the beginning of the race is slightly higher than the optimal velocity pattern\n* Slightly higher velocity than the optimal velocity pattern during the first half of the race\n\nObservations of the second race (one race before the incident)\n* Deviation from optimal velocity pattern increased from the previous race (MSE 0.937)\n* Higher velocity than the optimal velocity pattern during the first half of the race\n* Larger changes in velocity during the last half of the race: Dip in velocity around 1500 m mark, peak in velocity around 1600 m, a substantial decline in velocity towards the finish line\n\n**→ Could the observations during this race be an indicator of injury?**\n\nObservations of the third race (incident)\n* A considerable deviation from the optimal velocity pattern is due to the horse slowing down due to injury in the last half of the race.\n* Higher velocity than the optimal velocity pattern during the first half of the race\n\n### Discussion\nObviously, the previously discussed case study is aa cherry-picked example to showcase some interesting findings. While we can observe similar results in a few other reports (e.g., 132 or 461), not all of them show something like this because **horse injuries depend on multiple factors and not just one single event or circumstance** [a].\n\nIf we look at the MSE - as an indicator for the deviation from the optimal racing strategy - over race starts in 2019 for each injured horse, we can make the following observations in the plot below:\n* For 3 out of 13 horses we don't have enough data to evaluate the change in MSE\n* For 6 out of 13 horses, we can observe an increasing MSE\n* For 4 out of 13 horses, we can observe an decreasing MSE","metadata":{}},{"cell_type":"code","source":"def plot_mse(h, ax):\n    temp = nyra_start_table[nyra_start_table.horse_id == h].sort_values(by='race_date')\n    incident_type = temp[temp.incident_type.notna()].incident_type.values[0]\n\n    injury_date = temp[temp.injury].race_date.unique()[0]\n    temp['injury_timing'] = temp.race_date.map(lambda x: 'Incident' if x == injury_date else ('Before incident' if x < injury_date else 'After incident'))\n\n\n    #obtain m (slope) and b(intercept) of linear regression line\n    y= temp[temp.injury_timing == 'Before incident'].mse.values\n    x = temp[temp.injury_timing == 'Before incident'].race_date.astype(int).values\n    m, b = np.polyfit(x, y, 1)\n\n    #add linear regression line to scatterplot \n\n    if m > 0:\n        title = f'{h}: Increasing MSE'\n        previous_color = contrast_color\n        injury_color= highlight_color\n    else:\n        title = f'{h}: Decreasing MSE'\n        previous_color = 'grey'\n        injury_color= 'grey'\n    \n    if len(temp[temp.injury_timing == 'Before incident']) <= 1:\n        title = f'{h}: Not Enough Data to Evaluate'\n        previous_color = 'grey'\n        injury_color= 'grey'\n        \n        \n        \n    sns.scatterplot(data = temp[temp.injury_timing == 'Before incident'], \n                   x = 'race_date',\n                   y = 'mse',\n                    color = previous_color,\n                    ax=ax)\n    ax.annotate(incident_type, xy=(temp[temp.injury_timing == 'Incident'][\"race_date\"], 1.5), fontsize=14, color=injury_color, rotation=90, va='center', ha='left', backgroundcolor='white')\n    ax.vlines(temp[temp.injury_timing == 'Incident'][\"race_date\"], 0, 10, color = injury_color, label = 'Incident', linewidth =1)\n    ax.plot(temp[temp.injury_timing == 'Before incident'].race_date.values, \n            m*x+b, color=previous_color, linestyle='dashed')\n    \n    ax.set_title(title)\n    ax.set_ylabel('MSE')\n    ax.set_xlabel('Date')\n\n    ax.set_ylim([0,3])\n    ax.set_xlim(np.array(['2019-01-01', '2019-12-31'],\n                      dtype='datetime64'))\n    ax.xaxis.set_major_locator(mdates.MonthLocator(interval=3))\n    ax.xaxis.set_major_formatter(mdates.DateFormatter(\"%b\"));\n    \nfig, ax = plt.subplots(4, 4, figsize=(20,20))\ni=0\nj = 0\nfor h in injured_horses:\n    plot_mse(h, ax[i,j])\n    j = j+1\n    if j > 3:\n        j = 0\n        i = i+1\n        \nfig.delaxes(ax[3,1])\nfig.delaxes(ax[3,2])\nfig.delaxes(ax[3,3])\nplt.tight_layout()\nplt.show()","metadata":{"_kg_hide-input":true,"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"Although these findings have no statistical significance, we can see that 6 out of 10 horses have an increasing MSE leading up to the injury, while only 4 out of 10 horses have a a decreasing MSE. \n\nAs mentioned before, horse injuries are dependent on a variety of factors. Nevertheless, the deviation from velocity patterns could indicate injuries due to over-exhaustion or pre-existing injuries for some horses. Based on these findings, future studies could include these findings.\n\n# Conclusion and Recommendations\n\nIn this data analysis, we have evaluated whether changes in a horse's racing strategy over time can indicate future injuries. For this purpose, we have first extended the original dataset with horse injury data. Then, we processed it to evaluate racing velocities over the race distance.\n\nDuring the first analysis step, we found that the main influencing factors of a horse's racing strategy are the race distance and surface. Thus, we created optimal velocity profiles from the velocity profiles of race winners for each race distance and surface combination.\n\nIn the second analysis step, we created 13 racing reports for all horses injured or died in 2019 with more than one race start. The generated reports are available for download in the output folder of this Notebook. For some horses, we observed an increasing deviation from the optimal racing pattern leading up to the incident.\n\nBased on our analysis results, we conclude with the following two recommendations:\n1. We recommend including changes in a horse's velocity pattern over time in future studies of equine welfare. Equine injuries and fatalities depend on many factors, like racing frequencies, horse characteristics, jockey characteristics, etc. [2].\n2. We recommend conducting a specialized fitness check when a horse's racing strategy has shown a large deviation from the optimal racing pattern. This fitness check should aim to find pre-existing injuries.\n\nIn this study, we have only focused on the influence of a horse's racing strategy on its welfare. Incidents in horse racing depend on various factors, which we did not consider in this study. Further analysis should investigate the relationship of our influence factor with others.\n\nAdditionally, we observed only racing data for 2019 in this study. For further analysis, a more extensive database could lead to more precise insights. E.g., with racing data over several years, we could create more detailed velocity profiles which include minor impact factors. Also, with the horses' training data, we could analyze changes in a horse's racing pattern more in-depth.\n","metadata":{}},{"cell_type":"markdown","source":"# References\n\n[1] Mercier, Q., & Aftalion, A. (2020). Optimal speed in Thoroughbred horse racing. Plos one, 15(12), e0235024.\n\n[2] New York Task Force on Racehorse Health and Safety (2012). Investigation of Equine Fatalities at Aqueduct 2011-2012 Fall/Winter Meet\n\n[3] The Jockey Club. Equine Injury Database https://www.jockeyclub.com/default.asp?section=Advocacy&area=10 (accessed October 2022).\n\n[4] Spence, A. J., Thurman, A. S., Maher, M. J., & Wilson, A. M. (2012). Speed, pacing strategy and aerodynamic drafting in Thoroughbred horse racing. Biology letters, 8(4), 678-681.\n\n[5] Wong, A. S., Morrice‐West, A. V., Whitton, R. C., & Hitchens, P. L. (2022). Changes in Thoroughbred speed and stride characteristics over successive race starts and their association with musculoskeletal injury. Equine Veterinary Journal.","metadata":{}}]}