Wrong Result in Review (statistics)


#1

y code prints a wrong result. Please point me in the right direction. Thanks!

https://www.codecademy.com/courses/python-intermediate-en-7mgOa/2/3?curriculum_id=4f89dab3d788890003000096#

grades = [100, 100, 90, 40, 80, 100, 85, 70, 90, 65, 90, 85, 50.5]

def print_grades(grades):
    for grade in grades:
        print grade

def grades_sum(grades):
    total = 0
    for grade in grades: 
        total += grade
    return total
    
def grades_average(grades):
    sum_of_grades = grades_sum(grades)
    average = sum_of_grades / float(len(grades))
    return average

def grades_variance(scores):
    average = grades_average(scores)
    variance = 0
    for score in scores:
        variance += (average - score) ** 2
    result = variance/float(len(scores))
    return result
print grades_variance(grades)

def grades_std_deviation(variance):
    variance = grades_variance(grades)
    variance = variance ** 0.5
    return  variance


print grades
print grades_sum(grades)
print grades_average(grades)
print grades_variance(grades)
print grades_std_deviation(variance)

"Oops, try again.
grades_std_deviation(813.265306122449) returned 18.2776094147 instead of the correct value 28.5178068253"


#2

def grades_std_deviation(variance):
    variance = grades_variance(grades) #remove this.
    variance = variance ** 0.5
    return  variance



print grades
print grades_sum(grades)
print grades_average(grades)
print grades_variance(grades)
#insert variance = grades_variance(grades) here
print grades_std_deviation(variance)

Refer back to 8.Standard Deviation to see where I'm coming from.


#3

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.