Ranking tests results with a variable number of questions answered We want to rank the people based on their scores and number of questions answered.   They get one question daily and a running test score based on the number of correct answers vs. the number of questions asked.  We also know their “progress”, the percentage of questions answered vs. the total number of questions available.
Everyone is at a different percentage of completion at any given time since people start and answer at different times.  For example, some people will have answered only a few questions while others may have answered a hundred.
We’d like to compare and rank each person based on their score and progress.  We thought of taking test score X progress and ranking the result but wonder if there is a better way.
 A: You can simply calculate proportion of right answers, 
$$
P = {n_r \over n},
$$
but it's better to add a correction for total number of answers given.
One way to correct is to add "dummy" wrong answers (e.g. $10$), so
$$
P' = {n_r  \over n + 10 }.
$$
People with a large number of answers see their modified percentage alters very little from their real percentage, but people with relatively few answers will see their modified percentage move considerably toward low values.
This is known as "Bayesian averaging".
In effect, the people with many answers will rank higher than people with the same percentage but fewer answers.
A: I have resolved my issue.  Ranking progress was the difference.  First, I rank all the test scores high to low and store the "test score rank" in the person's test results.  I then rank the number of test questions answered from most questions answered to least and store that as the "progress rank".  Then I simply add the two ranks together and rank their sum for my overall rank.  The resulting list is exactly what I was looking for.   It produces a list that intuitively seems fair, is simple to explain, and easy to implement.
