~mmcg069/software-center/bug855666

1979 by Michael Vogt
* utils/show_top_rated_for_various_powers.py:
1
#!/usr/bin/python
2
3
import sys
4
5
sys.path.insert(0,"../")
6
7
from softwarecenter.backend.reviews import get_review_loader
8
from softwarecenter.db.pkginfo import get_pkg_info
9
from softwarecenter.utils import calc_dr
10
11
sys.path.insert(0, "../utils")
12
13
14
def show_top_rated_apps():
15
    # get the ratings
16
    cache = get_pkg_info()
17
    loader = get_review_loader(cache)
18
    review_stats = loader.REVIEW_STATS_CACHE
19
    # recalculate using different default power
20
    results = {}
21
    for i in [0.5, 0.4, 0.3, 0.2, 0.1, 0.05]:
22
        for (key, value) in review_stats.iteritems():
23
            value.dampened_rating = calc_dr(value.rating_spread, power=i)
1980 by Michael Vogt
utils/show_top_rated_for_various_powers.py: improve output a little bit
24
        top_rated = loader.get_top_rated_apps(quantity=25)
1979 by Michael Vogt
* utils/show_top_rated_for_various_powers.py:
25
        print "For power: %s" % i
1980 by Michael Vogt
utils/show_top_rated_for_various_powers.py: improve output a little bit
26
        for (i, key) in enumerate(top_rated):
27
            item = review_stats[key]
28
            print "%(rang)2i: %(pkgname)-25s avg=%(avg)1.2f total=%(total)03i dampened=%(dampened)1.5f spread=%(spread)s" % { 
29
                'rang' : i+1,
30
                'pkgname' : item.app.pkgname,
31
                'avg' : item.ratings_average,
32
                'total' : item.ratings_total,
33
                'spread' : item.rating_spread,
34
                'dampened' : item.dampened_rating,
35
                }
1979 by Michael Vogt
* utils/show_top_rated_for_various_powers.py:
36
        print 
37
        results[i] = top_rated[:]
38
        
39
40
if __name__ == "__main__":
41
    show_top_rated_apps()