I'm using scikit learn, if that's relevant. I'm still at the data collection stage, so I'm trying to figure out how to design my features to be useful.
I have an obstacle course where 5 teams (out of 25) compete at a time. Each team has a set of numerical stats assigned to them, such as overall strength, speed, teamwork, which may change from run to run (e.g. if a member suffers an injury/gets sick). For the purpose of the problem, a team is considered as a single unit (we don't care about the individual members, as their individual stats are already accounted for in the team stat).
Now, each obstacle course run is one row of my training data, and I want to predict the winning team based on their stats.
The problem is, I'm not sure how to turn the stats into features, or how to make predictions based on the competing teams for a certain run.
For example, I could do this...
Run# | Team | Str | Spd | Tmwk | Winner 352 | 05 | 46 | 59 | 33 | 14 352 | 14 | 88 | 15 | 49 | 14 352 | 02 | 63 | 52 | 63 | 14 ...and so on, for a total of 5 teams per run
but then it doesn't adhere to one training example per row. I was thinking to have something more like...
Run# | (TeamA_Stats) | (TeamB_Stats) | (TeamC_Stats) | ... | Winner 352 | (05, 46, 59, 33) | (14, 88, 15, 49) | (02, 63, 52, 63) | ... | 14 353 | (07, 71, 50, 15) | (05, 45, 55, 36) | (23, 11, 88, 66) | ... | 23
...but I'm not sure if that's even possible for scikit-learn to handle.
I feel like I'm approaching this the wrong way. How do I design the dataset so that I can include the stats of each team, but have it predict the single winning team of the run?