# Distance-specific win rate (precomputed per horse) race_history_df['dist_win_rate'] = ( race_history_df.groupby(['horse_id', 'distance'])['is_winner'] .transform('mean') )
# Days since last race race_history_df['days_since_last'] = ( race_history_df.groupby('horse_id')['race_date'].diff().dt.days ) winner carreras americanas
# Average speed figure last 3 races race_history_df['avg_speed_last3'] = ( race_history_df.groupby('horse_id')['speed_figure'] .transform(lambda x: x.rolling(3, min_periods=1).mean()) ) winner carreras americanas