summaryrefslogtreecommitdiff
path: root/numpy/lib/nanfunctions.py
Commit message (Collapse)AuthorAgeFilesLines
* BUG: Fix nanpercentile crash on all-nan slicesDavid Freese2016-01-121-2/+9
| | | | | | | | Fix bug where nanpercentile would crash with an all-nan slices when given multiple percentiles. Also corrects behavior where array sizes different from numpy.percentile would be returned with keepdims enabled. Fix #5760
* ENH: add np.nanprodStephan Hoyer2015-01-051-1/+76
| | | | | | | | | | | This PR adds an implementation of `nanprod`. The actual function is a two-liner adapted from `nansum`. Most of this PR consists of documentation and tests (for which I took the opportunity to do some consolidation). A method with the same functionality exists in pandas, and I was surprised to discover that it's not in numpy.
* Merge pull request #4929 from juliantaylor/charris-pep8-numpy-libCharles Harris2014-07-311-2/+0
|\ | | | | Charris pep8 numpy lib
| * MAINT: Fixes for problems in numpy/lib revealed by pyflakes.Charles Harris2014-07-311-2/+0
| | | | | | | | | | | | Some of those problems look like potential coding errors. In those cases a Fixme comment was made and the offending code, usually an unused variable, was commented out.
* | Merge pull request #4671 from charris/prepare-1.10-develCharles Harris2014-07-061-1/+5
|\ \ | |/ |/| MAINT: start 1.10-devel.
| * MAINT: Change default inplace, ufunc(...,out=x) casting to same_kind.Charles Harris2014-05-061-1/+5
| | | | | | | | | | | | There has been a warning of this change since numpy 1.7. numpy 1.10 is a good time to do it. The nanvar function needed a fix after the change, and the tests and documentation are updated.
* | ENH: use masked median for small multidimensional nanmediansJulian Taylor2014-06-021-1/+19
| |
* | BUG: nanpercentile/nanmedian 0-d with output given.Sebastian Berg2014-05-281-25/+24
| | | | | | | | Also some PEP-8 fixes and test improvements
* | ENH: added functionality nanpercentile to numpyDavid Freese2014-05-221-1/+173
|/ | | | | | Implemented a nanpercentile and associated tests as an extension of np.percentile to complement the other nanfunctions.
* ENH: added functionality nanmedian to numpyDavid Freese2014-05-021-2/+144
| | | | | | | | | | Implemented a nanmedian and associated tests as an extension of np.median to complement the other nanfunctions Added negative values to the unit tests Cleaned up documentation of nanmedian
* BUG: incorrect argument order to _copyto in in np.nanmax, np.nanminMarten van Kerkwijk2014-04-201-2/+2
|
* BUG: Refactor nanfunctions to behave as agreed on for 1.9.Charles Harris2013-10-041-144/+172
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Deal with subclasses of ndarray, like pandas.Series and matrix. Subclasses may not define the new keyword keepdims or deal gracefully with ufuncs in all their forms. This is solved by throwing the problem onto the np.sum, np.any, etc. functions that have ugly hacks to deal with the problem. Settle handling of all-nan slices. nanmax, nanmin -- Raise warning, return NaN for slice. nanargmax, nanargmin -- Raise ValueError. nansum -- Return 0 for slice. nanmean, nanvar, nanstd -- Raise warning, return NaN for slice. Make NaN functions work for scalar arguments. This may seem silly, but it removes a check for special cases. Update tests Deal with new all-nan handling. Test with matrix class as example of subclass without keepdims. Test with scalar arguments. Fix nanvar issue reported in #3860. Closes #3860 #3850
* DOC: Make documentation of nansum current with 1.9.Charles Harris2013-09-141-2/+2
| | | | | Simply state that Numpy versions < 1.9 returned nan instead of zero for the sum of empty slices.
* DEP: Make nansum return 0 for all-NaN or empty axis.Charles Harris2013-08-181-12/+1
| | | | | Make this happen and remove test parts dependent on numpy version < 1.9. Fixes test failures in numpy after 1.8 branch.
* DOC: Various fixes.Charles Harris2013-08-141-15/+14
| | | | | | Fix typos and clarify some explanations. Document the changes in the return values of nanargmin and nanargmax for all-NaN slices in the 1.8.0 release notes.
* MAINT: Refactor nanfunctions.Charles Harris2013-08-121-333/+468
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | nanmax, nanmin -------------- Add out and keepdims keywords. nanargmin, nanargmax -------------------- A NanWarning is raised if an all NaN slice detected. For all such slices np.iingo(np.intp).min is returned as the index value. nansum ------ The keywords dtype, out, and keepdims are added. A FutureWarning is raised, as in the future the mean of an empty slice after NaN replacement will be 0 instead of the current NaN. nanmean, nanvar, nanstd ----------------------- For all, if the input array is of inexact type then the dtype and out parameters must be of inexact type if specified. That insures that NaNs can be returned when appropriate. The nanmean function detects empty slices after NaN replacement and raises a NanWarning. NaN is returned as the value for all such slices. The nanmean and nanstd functions detect degrees of freedom <= 0 after NaN replacement and raise a NanWarning. NaN is returned as the value for all such slices.
* MAINT: Separate nan functions into their own module.Charles Harris2013-08-121-0/+678
New files lib/nanfunctions.py and lib/tests/test_nanfunctions.py are added and both the previous and new nan functions and tests are moved into them. The existing nan functions moved from lib/function_base are: nansum, nanmin, nanmax, nanargmin, nanargmax The added nan functions moved from core/numeric are: nanmean, nanvar, nanstd