The test statistic F test for equal variances is simply:
F = Var(X) / Var(Y)
Where F
is distributed as df1 = len(X) - 1, df2 = len(Y) - 1
scipy.stats.f
which you mentioned in your question has a CDF method. This means you can generate a p-value for the given statistic and test whether that p-value is greater than your chosen alpha level.
Thus:
alpha = 0.05 #Or whatever you want your alpha to be.
p_value = scipy.stats.f.cdf(F, df1, df2)
if p_value > alpha:
# Reject the null hypothesis that Var(X) == Var(Y)
Note that the F-test is extremely sensitive to non-normality of X and Y, so you're probably better off doing a more robust test such as Levene's test or Bartlett's test unless you're reasonably sure that X and Y are distributed normally. These tests can be found in the scipy
api:
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…