Standard Deviation

The expected value of a discrete random variable, XX, is more or less another way of referring to the mean (μ\mu). We can also refer to this as the mathematical expectation (or just the expectation) of XX.

Variance σ2\sigma^2

This is the average magnitude of fluctuations of XX from its expected value, μ\mu. You can also think of it as the expectation of a random variable's squared deviation from its mean. Given a data set, XX, of size :

σ2=i=1n(xiμ)2n\sigma^2 = \frac{\sum_{i=1}^n (x_i - \mu)^2}{n}

where xix_i is the ithi^{th} element of the data set and μ\mu is the mean of all the elements.

The standard deviation quantifies the amount of variation in a set of data values. Given a data set, XX, of size :

σ=i=1n(xiμ)2n\sigma = \sqrt{\frac{\sum_{i=1}^n (x_i - \mu)^2}{n}}

where xix_i is the ithi^{th} element of the data set and μ\mu is the mean of all the elements.

import math

num = int(input())
values = list(map(int, input().split()))

mean = sum(values)/num

result = 0
for i in values:
    result += (i - mean)**2

print('%.1f' % math.sqrt(result/num))

Interquartile Range

num = 5
elements = [10, 40, 30, 50, 20]
freq = [1, 2, 3, 4, 5]

values = []
for k, v in enumerate(elements):
    values.extend([v] * freq[k])
values.sort()

lower = values[:len(values)//2]
upper = values[len(values)//2:]

num = len(values)-1
if num % 2 == 0:
    lower = values[:len(values)//2]
    upper = values[len(values)//2:]
else:
    lower = values[:len(values)//2]
    upper = values[len(values)//2:]
    lower.append(upper[0])

if len(lower) % 2 == 0:
    v1 = lower[int(len(lower)/2)-1]
    v2 = lower[int(len(lower)/2)]
    q1 = (v1+v2)/2
    v1 = upper[int(len(upper)/2)-1]
    v2 = upper[int(len(upper)/2)]
    q3 = (v1+v2)/2
else:
    q1 = lower[int(len(lower)/2)]
    q3 = upper[int(len(upper)/2)]

print(float(q3 - q1))

Last updated