brown horse

Most racing datasets stop at the result. Hong Kong gives you something extra: a public record of the veterinary notes the Jockey Club attaches to its horses, from lameness and withdrawals to what a scope found in the windpipe after a race. We hold 53,966 of these notes, and they are some of the least used data in the archive.

Below, the Hong Kong veterinary records as they actually look, with the counts, and some advice on turning free text into something a model can use.

What a record looks like

Each record has a horse, a race, a horse number, a date, a block of free text, and a “passed on” date where one exists. That is all. The text is the interesting part, and it reads like a clinical note. Three real examples, in the Jockey Club’s own words:

  • “Lame left front leg on the day after racing.”
  • “Arthroscopic surgery to right knee (bone fragment removal).”
  • “Substantial mucus in trachea noted on post-race scoping.”

Records run from 26 September 2016 to September 2026. About 1,690 of them have no date at all, so filter before you plot anything against time.

How many, and when

The volume has changed a lot over the years, and that matters if you are tempted to draw a trend.

YearRecords
2019710
20202,560
20214,360
20228,433
202314,537
202412,150
20257,730

Do not read that as a rise and fall in injuries. Those numbers reflect what was published, and when we collected it, as much as what happened on the track. Compare notes within a year, or normalise by the number of runners, but not across years without a good reason.

The reasons that come up most

We counted the first 60 characters of each note. The commonest ones:

NoteRecords
Unacceptable performance.5,468
Castration.4,520
Substantial blood in trachea noted on post-race scoping.3,654
Disappointing performance.2,323
Substantial mucus in trachea noted on post-race scoping.1,983
Eight years of age or above at season end.1,361
Unraced for 12 months.1,131
Rider concerned horse’s action during racing.1,062
Heart irregularity noted after racing.879
Lame right fore.794

Look at the shape of that list. A lot of entries are not injuries. “Castration” is a management event, and “Eight years of age or above” and “Unraced for 12 months” read like routine flags rather than findings. A headline count of “vet records” overstates how many horses were hurt, which is the first thing to fix in any analysis.

How long a horse is out

The “passed on” date is the part most people overlook, because it turns a note into a duration. 44,635 of the 53,966 records have one. Measured from the date of the note to the passed-on date, the median is 30 days. The middle half of records fall between 16 and 85 days, and one in ten takes more than 137.

The reason matters a lot:

Note starts withRecordsMedian days
Unacceptable performance7,45220
Substantial blood in trachea3,96320
Disappointing performance2,92819
Heart irregularity1,56136
Lame7,70243

Lameness keeps a horse out more than twice as long as a performance concern. That is the sort of simple, checkable fact you cannot get from results alone, and it is a sensible feature if you are modelling how quickly a horse returns.

Making the text usable

Free text is awkward, and the vocabulary is fairly small, so a handful of rules gets you most of the way. A starter in Python:

import re

RULES = [
    ("withdrawn", r"withdrawn"),
    ("lameness", r"blameb|swollen|abrasion"),
    ("scoping", r"scoping|trachea|mucus|blood"),
    ("cardiac", r"heart|irregularity"),
    ("surgery", r"surgery|castration|operation"),
    ("performance", r"performance|rider concerned"),
    ("administrative", r"years of age or above|unraced for"),
]

def classify(details):
    text = (details or "").lower()
    return [name for name, pattern in RULES if re.search(pattern, text)] or ["other"]

A note can belong to more than one category, so keep the result as a list. Run it over a sample and read what falls into “other”. Expect to add rules.

Once you have categories, the useful questions become straightforward. How long between a note and the horse’s next run? How does a horse perform after a scoping finding compared with before? Do trainers differ in how often a horse comes back after a lameness note? Those need care, because the sample is small once you split it, and none of it is medical advice.

Joining it to the rest

Most records have a race identifier and a horse identifier, so they join to the results and racecards the same way anything else does. About 2,500 of the 53,966 are missing one or the other, so count the rows that fail to join before you trust a total. The API exposes four veterinary endpoints: the latest records, by date, by race and by horse. The Hong Kong datasets include the whole table, and the Hong Kong racing guide shows where it sits next to the rest of the archive.

Treat the notes as what they are: short, factual and sometimes administrative. A horse withdrawn on veterinary grounds also shows up as WV in the place column, the commonest non-finishing code in Hong Kong, and the result codes guide lists the rest. To see the records yourself, start with the API.

Comments are closed

0
    0
    Your Cart
    Your cart is emptyReturn to Shop