[Scipy-svn] r7100 - trunk/scipy/stats
scipy-svn at scipy.org
scipy-svn at scipy.org
Sat Jan 29 15:17:35 EST 2011
Author: warren.weckesser
Date: 2011-01-29 14:17:35 -0600 (Sat, 29 Jan 2011)
New Revision: 7100
Modified:
trunk/scipy/stats/morestats.py
trunk/scipy/stats/mstats_basic.py
trunk/scipy/stats/mstats_extras.py
trunk/scipy/stats/stats.py
Log:
ENH: stats: Don't use plain assert for argument validation.
Modified: trunk/scipy/stats/morestats.py
===================================================================
--- trunk/scipy/stats/morestats.py 2011-01-29 19:17:31 UTC (rev 7099)
+++ trunk/scipy/stats/morestats.py 2011-01-29 20:17:35 UTC (rev 7100)
@@ -72,7 +72,7 @@
## Returns alpha confidence interval for the mean, variance,
## and std.
-def bayes_mvs(data,alpha=0.90):
+def bayes_mvs(data, alpha=0.90):
"""Return Bayesian confidence intervals for the mean, var, and std.
Assumes 1-d data all has same mean and variance and uses Jeffrey's prior
@@ -89,8 +89,10 @@
"""
x = ravel(data)
n = len(x)
- assert(n > 1)
- assert(alpha < 1 and alpha > 0)
+ if n < 2:
+ raise ValueError("data must contain at least two values.")
+ if alpha >= 1 or alpha <= 0:
+ raise ValueError("0 < alpha < 1 is required, but alpha=%s was given." % alpha)
n = float(n)
if (n > 1000): # just a guess. The curves look very similar at this point.
return _gauss_mvs(x, n, alpha)
@@ -533,10 +535,11 @@
a = zeros(N,'f')
init = 0
else:
- assert(len(a) == N/2), "a must be == len(x)/2"
+ if len(a) != N//2:
+ raise ValueError("len(a) must equal len(x)/2")
init = 1
y = sort(x)
- a,w,pw,ifault = statlib.swilk(y,a[:N/2],init)
+ a, w, pw, ifault = statlib.swilk(y, a[:N//2], init)
if not ifault in [0,2]:
warnings.warn(str(ifault))
if N > 5000:
Modified: trunk/scipy/stats/mstats_basic.py
===================================================================
--- trunk/scipy/stats/mstats_basic.py 2011-01-29 19:17:31 UTC (rev 7099)
+++ trunk/scipy/stats/mstats_basic.py 2011-01-29 20:17:35 UTC (rev 7100)
@@ -1286,7 +1286,8 @@
shp = a.shape
return _trimmed_stde_1D(a.ravel(),lolim,uplim,loinc,upinc)
else:
- assert a.ndim <= 2, "Array should be 2D at most !"
+ if a.ndim > 2:
+ raise ValueError("Array 'a' must be at most two dimensional, but got a.ndim = %d" % a.ndim)
return ma.apply_along_axis(_trimmed_stde_1D, axis, a,
lolim,uplim,loinc,upinc)
@@ -1534,7 +1535,8 @@
if (axis is None):
return _stdemed_1D(data)
else:
- assert data.ndim <= 2, "Array should be 2D at most !"
+ if data.ndim > 2:
+ raise ValueError("Array 'data' must be at most two dimensional, but got data.ndim = %d" % data.ndim)
return ma.apply_along_axis(_stdemed_1D, axis, data)
#####--------------------------------------------------------------------------
Modified: trunk/scipy/stats/mstats_extras.py
===================================================================
--- trunk/scipy/stats/mstats_extras.py 2011-01-29 19:17:31 UTC (rev 7099)
+++ trunk/scipy/stats/mstats_extras.py 2011-01-29 20:17:35 UTC (rev 7100)
@@ -92,7 +92,8 @@
if (axis is None) or (data.ndim == 1):
result = _hd_1D(data, p, var)
else:
- assert data.ndim <= 2, "Array should be 2D at most !"
+ if data.ndim > 2:
+ raise ValueError("Array 'data' must be at most two dimensional, but got data.ndim = %d" % data.ndim)
result = ma.apply_along_axis(_hd_1D, axis, data, p, var)
#
return ma.fix_invalid(result, copy=False)
@@ -162,7 +163,8 @@
if (axis is None):
result = _hdsd_1D(data, p)
else:
- assert data.ndim <= 2, "Array should be 2D at most !"
+ if data.ndim > 2:
+ raise ValueError("Array 'data' must be at most two dimensional, but got data.ndim = %d" % data.ndim)
result = ma.apply_along_axis(_hdsd_1D, axis, data, p)
#
return ma.fix_invalid(result, copy=False).ravel()
@@ -236,7 +238,8 @@
return mj
#
data = ma.array(data, copy=False)
- assert data.ndim <= 2, "Array should be 2D at most !"
+ if data.ndim > 2:
+ raise ValueError("Array 'data' must be at most two dimensional, but got data.ndim = %d" % data.ndim)
p = np.array(prob, copy=False, ndmin=1)
# Computes quantiles along axis (or globally)
if (axis is None):
@@ -305,7 +308,8 @@
if (axis is None):
result = _cihs_1D(data.compressed(), alpha)
else:
- assert data.ndim <= 2, "Array should be 2D at most !"
+ if data.ndim > 2:
+ raise ValueError("Array 'data' must be at most two dimensional, but got data.ndim = %d" % data.ndim)
result = ma.apply_along_axis(_cihs_1D, axis, data, alpha)
#
return result
Modified: trunk/scipy/stats/stats.py
===================================================================
--- trunk/scipy/stats/stats.py 2011-01-29 19:17:31 UTC (rev 7099)
+++ trunk/scipy/stats/stats.py 2011-01-29 20:17:35 UTC (rev 7100)
@@ -3490,7 +3490,8 @@
.. [1] http://en.wikipedia.org/wiki/Kruskal-Wallis_one-way_analysis_of_variance
"""
- assert len(args) >= 2, "Need at least 2 groups in stats.kruskal()"
+ if len(args) < 2:
+ raise ValueError("Need at least two groups in stats.kruskal()")
n = map(len,args)
all = []
for i in range(len(args)):
More information about the Scipy-svn
mailing list