def _getRatingAverages(): count = 0 android_rating_total = 0 ios_rating_total = 0 android_ratings = [] ios_ratings = [] global android_rating_average global ios_rating_average global android_rating_median global ios_rating_median global android_rating_q1 global ios_rating_q1 global android_rating_q3 global ios_rating_q3 for app in collection_ios.find().batch_size(30): # count=count+1 # android_rating_total=android_rating_total+float(app['android_ratingsAllVersions'].replace(',','')) # ios_rating_total=ios_rating_total+float(app['ios_ratingsAllVersions_new'].replace(',','')) android_ratings.append(float(app["android_ratingsAllVersions"].replace(",", ""))) ios_ratings.append(float(app["ios_ratingsAllVersions_new"].replace(",", ""))) android_rating_average = stats.mean(android_ratings) ios_rating_average = stats.mean(ios_ratings) android_rating_median = stats.median(android_ratings) ios_rating_median = stats.median(ios_ratings) android_rating_q1 = stats.quartiles(android_ratings)[0] ios_rating_q1 = stats.quartiles(ios_ratings)[0] android_rating_q3 = stats.quartiles(android_ratings)[1] ios_rating_q3 = stats.quartiles(ios_ratings)[1] print "ios stats" print ios_rating_q1 print ios_rating_median print ios_rating_q3 print "Android stats" print android_rating_q1 print android_rating_median print android_rating_q3
def _getRatingAverages(): count=0 android_rating_total=0 ios_rating_total=0 android_ratings=[] ios_ratings=[] global android_rating_average global ios_rating_average global android_rating_median global ios_rating_median global android_rating_q1 global ios_rating_q1 global android_rating_q3 global ios_rating_q3 for app in collection_ios.find(no_cursor_timeout=True): #count=count+1 #android_rating_total=android_rating_total+float(app['android_ratingsAllVersions'].replace(',','')) #ios_rating_total=ios_rating_total+float(app['ios_ratingsAllVersions_new'].replace(',','')) android_ratings.append(float(app['android_success']-app['ios_success'])) #ios_ratings.append(float(app['ios_success'])) #difference android_rating_average=stats.mean(android_ratings) #ios_rating_average=stats.mean(ios_ratings) android_rating_median=stats.median(android_ratings) #ios_rating_median=stats.median(ios_ratings) android_rating_q1=stats.quartiles(android_ratings)[0] #ios_rating_q1=stats.quartiles(ios_ratings)[0] android_rating_q3=stats.quartiles(android_ratings)[1] #ios_rating_q3=stats.quartiles(ios_ratings)[1] print "Android stats" print android_rating_q1 print android_rating_median print android_rating_q3
def _getRatingAverages(): count = 0 android_rating_total = 0 ios_rating_total = 0 android_ratings = [] ios_ratings = [] global android_rating_average global ios_rating_average global android_rating_median global ios_rating_median global android_rating_q1 global ios_rating_q1 global android_rating_q3 global ios_rating_q3 for app in collection_ios.find(no_cursor_timeout=True): #count=count+1 #android_rating_total=android_rating_total+float(app['android_ratingsAllVersions'].replace(',','')) #ios_rating_total=ios_rating_total+float(app['ios_ratingsAllVersions_new'].replace(',','')) android_ratings.append( float(app['android_success'] - app['ios_success'])) #ios_ratings.append(float(app['ios_success'])) #difference android_rating_average = stats.mean(android_ratings) #ios_rating_average=stats.mean(ios_ratings) android_rating_median = stats.median(android_ratings) #ios_rating_median=stats.median(ios_ratings) android_rating_q1 = stats.quartiles(android_ratings)[0] #ios_rating_q1=stats.quartiles(ios_ratings)[0] android_rating_q3 = stats.quartiles(android_ratings)[1] #ios_rating_q3=stats.quartiles(ios_ratings)[1] print "Android stats" print android_rating_q1 print android_rating_median print android_rating_q3
def countValuesInQuartiles(numbersList): q1Count, q2Count, q3Count = [], [], [] try: q1, q2, q3 = stats.quartiles(numbersList) for number in numbersList: if float(number) >= q3: q3Count.append(number) elif float(number) <= q1: q1Count.append(number) else: # it must be in between, right? q2Count.append(number) except Exception as e: pass # silently in to the night! return len(q1Count), len(q2Count), len(q3Count)
def getQuartilesData(numbersList): mean = 0 median = 0 quartiles = 0.0, 0.0, 0.0 inQuarts = countValuesInQuartiles(numbersList) q1, q2, q3 = inQuarts q1percent = calculatePercentage(q1, len(numbersList)) q2percent = calculatePercentage(q2, len(numbersList)) q3percent = calculatePercentage(q3, len(numbersList)) try: quartiles = stats.quartiles(numbersList) except Exception as e: pass try: median = stats.median(numbersList) except Exception as e: pass try: mean = stats.mean(numbersList) except Exception as e: pass return { "mean": mean, "median": median, "Q1": round(q1, 2), "Q2": round(q2, 2), "Q3": round(q3, 2), "Q1Perc": round(q1percent, 2), "Q2Perc": round(q2percent, 2), "Q3Perc": round(q3percent, 2), "quartileCount": inQuarts, "quartiles": quartiles }