In [2]:

```
# Variable declaration
from scipy import *
from pylab import *
val = 0
Mine1 = array([8260,8130,8350,8070,8340])
# Calculation
Mean1 = sum(Mine1)/len(Mine1)
for each in Mine1:
val = val + (Mean1-each)**2
var = (val)/(len(Mine1)-1)
std_dev = sqrt(var)
d2 = 2.326 # for n=5
est_std_dev = (max(Mine1)-min(Mine1))/d2
# Result
print "Estimated standard deviation: ",round(est_std_dev,1)
print "Actual standard deviation: ",round(std_dev,1)
```

In [2]:

```
# Variable declaration
v = 19 # degree of freedom
Variance = 1.2* pow(10,-4) # variance
# Calculation
from scipy import *
from pylab import *
# alpha = 0.05
chi_square1 = 8.907 # chi square value at alpha/2 from table-5
chi_square2 = 32.852 # chi square value at 1-(alpha/2) from table-5
# we need to find limits of sigma
y1 = (v*Variance) / chi_square2
y2 = (v*Variance) / chi_square1
y1 = round( sqrt(y1), 4) #lower limit
y2 = round( sqrt(y2), 4) #upper limit
# Result
print "95% confidence interval: (",y1," , ",y2,")"
```

In [3]:

```
# Variable declaration
alpha = 0.05 # level of significance
v = 14 # degree of freedom
std_dev = 0.64 # standard deviation(in mil)
sigma = 0.5
# Calculation
from scipy import *
from pylab import *
# null hypothesis: if sigma = 0.5 , Alternative hypothesis if sigma > 0.5
chi_sq_thr = 23.685 # theoritical value of chi square at alpha = 0.05 with v = 14
chi_sq_prt = ( v*pow(std_dev,2) ) /pow(sigma,2) # calculated value of chi square
chi_sq_prt = round(chi_sq_prt,2)
# Result
if(chi_sq_thr > chi_sq_prt):
print "null hypothesis can not be rejected"
print "we can not conclude that lapping process is unsatisfatory"
else:
print "null hypothesis can be rejected"
print "we can conclude that lapping process is unsatisfatory"
```

In [4]:

```
# Variable declaration
v = 11 # degree of freedom
s1 = 0.035 # company-1 work yield
s2 = 0.062 # company-2 work yield
alpha = 0.05 # level of significance
# Calculation
from scipy import *
from pylab import *
# null hypothesis: if square(sigma1) = square(sigma2) , Alternative hypothesis if square(sigma1) < square(sigma2)
f_thr = 2.82 # theoritical value of F at alpha = 0.05 with v = 11
f_prt = square(s2) / square(s1) # calculated value of F
f_prt = round(f_prt,2)
# Result
if(f_thr > f_prt):
print "null hypothesis can not be rejected"
print "data does not support contention"
else:
print "null hypothesis must be rejected"
print "data supports contention"
```

In [5]:

```
# Variable declaration
alpha = 0.02 # level of significance
val1 = 0
val2 = 0
Mine1 = array([8260,8130,8350,8070,8340])
Mine2 = array([7950,7890,7900,8140,7920,7840])
# Calculation
from scipy import *
from pylab import *
Mean1 = sum(Mine1)/len(Mine1)
Mean2 = sum(Mine2)/len(Mine2)
for each in Mine1:
val1 = val1 + (Mean1-each)**2
for each in Mine2:
val2 = val2 + (Mean2-each)**2
# null hypothesis: if square(sigma1) = square(sigma2) , Alternative hypothesis if square(sigma1) < square(sigma2)
s1_square = val1/(len(Mine1)-1)
s2_square = val2/(len(Mine2)-1)
f_thr = 11.4 # theoritical value of F at alpha = 0.02 for 4 & 5 DOF
f_prt = s1_square / float(s2_square) # calculated value of F
f_prt = round(f_prt,2)
# Result
print "Practical F value: ",f_prt
if(f_thr > f_prt):
print "null hypothesis can not be rejected"
print "It can be assumed that variances of two populations sampled are equal."
else:
print "null hypothesis must be rejected"
print "It can not be assumed that variances of two populations sampled are equal."
```

In [6]:

```
# Variable declaration
v1 = 8 # degree of freedom of sample-1
v2 = 8 # degree of freedom of sample-2
alpha = 0.02 # level of significance
s1_square = 0.4548 # for sample-1
s2_square = 0.1089 # for sample-2
# Calculation
from scipy import *
from pylab import *
# 98% confidence interval
f1 = 6.03 # f value at 0.01
f2 = 1 / 6.03 # f value at 0.99
y1 = (f2)*(s2_square / s1_square) # lower limit
y2 = (f1)*(s2_square / s1_square) # upper limit
y1 = round(y1,2)
y2 = round(y2,2)
# Result
print "98% confidence interval: (",y1," , ",y2,")"
```