From ccf308399107ec304b7e0d36692f9d929b6d3416 Mon Sep 17 00:00:00 2001 From: Stefan van der Walt Date: Sun, 16 May 2010 08:31:03 +0000 Subject: BUG: Correctly handle in-place output in percentile. --- numpy/lib/function_base.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'numpy/lib/function_base.py') diff --git a/numpy/lib/function_base.py b/numpy/lib/function_base.py index 7d825136c..5504a0f99 100644 --- a/numpy/lib/function_base.py +++ b/numpy/lib/function_base.py @@ -2964,9 +2964,15 @@ def percentile(a, q, axis=None, out=None, overwrite_input=False): # handle sequence of q's without calling sort multiple times def _compute_qth_percentile(sorted, q, axis, out): if not isscalar(q): - return [_compute_qth_percentile(sorted, qi, axis, out) - for qi in q] - q = q / 100.0 + p = [_compute_qth_percentile(sorted, qi, axis, None) + for qi in q] + + if out is not None: + out.flat = p + + return p + + q = q / 100.0 if (q < 0) or (q > 1): raise ValueError, "percentile must be either in the range [0,100]" -- cgit v1.2.1