Weighted rank equation for sorting movies. Need explanation or new equation.
IMDB (Internet Movie Database) has a top 250 list of movies. Movies enter this list according to a weighted rank.
I downloaded a copy of the database from an ftp site that imdb.com pointed out for personal use and within this file I found the following:
Code:
weighted rank = (v/(v+k))*X + (k/(v+k))*C
where:
X = average for the movie (mean)
v = number of votes for the movie
k = minimum votes required to be listed in the top 250
C = the mean vote across the whole report (currently 6.90)
I plugged this in to recreate the top 250 list and it works fine. But I've been trying to understand how it works for some time and I can't get it.
I want to create another type of list. This list will be called top_recent_movies. The equation above should include the following new parameters.
a = age of the move in years
m = maximum age to be considered (currently 3 years)
If I had to give it a go I would probably do this but I know it's wrong:
Code:
weighted rank = (v/(v+k))*X + (k/(v+k))*C + (m/a)
where:
a = age of the movie in years
m = maximum age to be considered (currently 3 years)
X = average for the movie (mean)
v = number of votes for the movie
k = minimum votes required to be listed in the top 250
C = the mean vote across the whole report (currently 6.90)
I mean would there be any difference between (m/a) and (1/a)
Any help, please?
Re: Weighted rank equation for sorting movies. Need explanation or new equation.
I made a little progress last night after about an hour and 6 pages of trying to work out how the original equations works, and I actually got it, I think... :D
(v/(v+k)) + (k/v+k) = 1.0
As the number of votes increase, the weight of the mean vote for the movie increases, by a decreasing amount.
So to introduce m and a and still keep the rank in the range of 0.0 to 10.0 I did something similar. It penalizes movies that are old, by a decreasing amount.
Code:
((v/(v+k))*X + (k/(v+k))*C) * (m/(m+a))
where:
a = age of the movie in years
m = maximum age to be considered (currently 3 years)
X = average for the movie (mean)
v = number of votes for the movie
k = minimum votes required to be listed in the top 250
C = the mean vote across the whole report (currently 6.90)
Re: Weighted rank equation for sorting movies. Need explanation or new equation.
Ok so I tested it out and the weird thing is is works just as I want it to. It includes movies from current and previous year. Although when I adjust m (maximum age) it makes no difference whether m = 3.0 or m=10.0
will maybe try something like
((v/(v+k))*X + (k/(v+k))*C) * ((m*5)/((m*5)+a))
--- edit ---
I don't know, the equation seems right but still, adjusting m doesn't change the result. Yet when I print the figures they do change. May have something to do with the list itself. Am satisfied with this for now.