I have a typical scenario and wanted to know how to approach the problem to solve it.

Let say the data set contains $N$ records and each record contains $10$ names and an output variable. The first $5$ names belong to Team $A$ and the next $5$ names belong to Team $B$. The output variable tells whether Team $A$ wins or Team $B$ wins.

Which algorithm are used to solve this type of data set? I am trying to use Naive Bayes classification. Is there any other method better suited for these problems?

My attempt: Calculated $P(A_{win}),P(B_{win}),P(N_i),P(N_i|A_{win}),P(N_i|B_{win})$
$$P(A_{win} | N_1N_2\cdots N_5) = \frac{P(N_1N_2\cdots N_5 | A_{win}) * P(A_{win})}{P(N_1N_2\cdots N_5)}$$ $$ = \frac{P(N_1 | A_{win}) * \cdots *P(N_5 | A_{win}) * P(A_{win})}{P(N_1)*\cdots *P(N_5)}$$

$$P(B_{win} | N_6N_7\cdots N_{10}) = \frac{P(N_6N_7\cdots N_{10} | B_{win}) * P(B_{win})}{P(N_6N_7\cdots N_{10})}$$ $$ = \frac{P(N_6 | B_{win}) * \cdots *P(N_{10} | B_{win}) * P(B_{win})}{P(N_{6})*\cdots *P(N_{10})}$$

If $P(A_{win} | N_1N_2\cdots N_5) > P(B_{win} | N_6N_7\cdots N_{10})$ Then $A$ wins

Not sure whether this approach is right or wrong!

  • $\begingroup$ possible duplicate of Predicting team performance $\endgroup$
    – mlwida
    Apr 17, 2013 at 9:34
  • $\begingroup$ I think this question expands a lot on the one @steffen marked as a duplicate, so that one should be deleted or this one merged into that one or something. $\endgroup$
    – Peter Flom
    Apr 17, 2013 at 10:25
  • $\begingroup$ The OP answered both and in both the interest in a general solution is expressed. IMHO the extra "is my first approach, the modelling via Naive Bayes in such a way, ok ?" is not worth keeping. $\endgroup$
    – mlwida
    Apr 17, 2013 at 10:32

1 Answer 1


By using Naive Bayes you assume that there is no such thing as team-play (Two players being best when play together). Keeping that in mind, you can do just the following: For each player evaluate number of games he wins divided by the total number of games. That will player's rate. Team's rate can be evaluated as a sum of all members' rates. The team having greater rate most likily to win.

If you would like to take team-play into account you need to introduce some measure of it. Say, for each pair of players have it's rate. Note, this value could be negative (if two players hates each other), so I would compute it as

((number of games pair win) - (number of games each one player win)) / (total number of games)

This rate can be added to team's rate, i think.

Also, in this approach, you should consider groups of 3, 4 and 5 players.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.