8/9: Standard Deviation - my code seems right, can't figure out what is going wrong!


#1



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

I keep getting the error message "Oops, try again. grades_std_deviation(8.3950617284) returned 1.1122468762 instead of the expected: 2.8974232912"
Can't figure out what is going wrong!


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
    var2 = variance / float(len(scores))
    return var2

print grades_variance(grades)

def grades_std_deviation(variance):
    return variance ** .05
    
variance = grades_variance(grades)

print grades_std_deviation(variance)


#2

Standard deviation is a square root of the variance. This is why it should be:

def grades_std_deviation(variance):
    return variance ** 0.5

a ** .05 -> a^(1/20)


#3

Thank you - you're totally right!!!


#4

You're very welcome!