summaryrefslogtreecommitdiff
path: root/numpy/matrixlib/tests
Commit message (Collapse)AuthorAgeFilesLines
* STY: PEP8 and pyflakes fixes for numpy/matrixlib/tests.Charles Harris2015-07-253-110/+110
|
* DOC: Remove references to removed setasflat ndarray method.Charles Harris2015-07-011-1/+1
|
* BUG: np.nonzero behaving differently for 1-D arraysJaime Fernandez2015-05-132-4/+4
| | | | Fixes #5837
* BUG: Make ravel function return 1-D arrays for matrix argument.Charles Harris2015-01-041-5/+5
| | | | | | This is a backward compatibility hack to avoid breaking scipy.sparse after fixing ravel to respect subtypes. Subtypes are still respected except in the case of matrices and subclasses of matrices.
* BUG: Make diag, diagonal return 1-D arrays for matrix arguments.Charles Harris2015-01-041-7/+7
| | | | | | | | This is an ugly hack to preserve backwards compatibility for code that uses matrices. It is needed since both diag and diagonal have been changed to preserve subtypes otherwise. Note that a.diagonal() still returns matrices when a is a matrix.
* BUG: Fixes #5376: np.ravel to return same array typeGarrett-R2015-01-021-7/+11
| | | | | | | | In PR #5358, np.diagonal was modified to return whatever array type it took in. Also, np.cumsum and np.clip return the same array type. So, np.ravel's behavior is surprising. Two tests which were expecting np.ravel to return an array have been changed. Also, the optional `order` parameter was added to MaskedArray.ravel to make it compatible (matrix.ravel already had this parameter).
* BUG: Closes #2015: diag returns ndarrayGarrett-R2014-12-081-1/+11
| | | | | | | If x is a matrix, np.diag(x) and np.diagonal(x) now return matrices instead of arrays. Both of these cause x.diagonal() to be called. That means they return row vectors (just like x.flatten(), x.ravel(), x.cumprod(), etc.)
* TST: pass sys.argv to run_module_suite by defaultJulian Taylor2014-09-043-1/+10
| | | | | allows passing flags like --pdb to test files also add call to files where its missing
* MAINT: restore optional ravel order and add tests and more docstring linesalex2014-07-311-0/+47
|
* ENH: add tobytes and stop using tostring in documentationJulian Taylor2014-02-111-2/+2
| | | | | | | tostring returns bytes which are not equal to string, so provide a tobytes function alias. tostring does not emit a deprecation warning yet so rdepends do not need to check two names to support older versions of numpy without warnings.
* STY: Giant comma spacing fixup.Charles Harris2013-08-184-112/+112
| | | | | | | Run the 2to3 ws_comma fixer on *.py files. Some lines are now too long and will need to be broken at some point. OTOH, some lines were already too long and need to be broken at some point. Now seems as good a time as any to do this with open PRs at a minimum.
* STY: Giant whitespace cleanup.Charles Harris2013-08-181-1/+0
| | | | Now is as good a time as any with open PR's at a low.
* ENH: add quickselect algorithm and expose it via partitionJulian Taylor2013-08-121-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | A partition sorts the kth element into its sorted order and moves all smaller elements before the kth element and all equal or greater elements behind it. The ordering of all elements in the partitions is undefined. It is implemented via the introselection algorithm which has worst case linear complexity compared to a full sort that has linearithmic complexity. The introselect algorithm uses a quickselect with median of three pivot and falls back to a quickselect with median of median of five pivot if no sufficient progress is made. The pivots used during the search for the wanted kth element can optionally be stored and reused for further partitionings of the array. This is used by the python interface if an array of kth is provided to the partitions function. This improves the performance of median and which need to select two elements if the size of the array is even. A percentile function interpolating between values also profits from this. String selection is implemented in terms of quicksort which has the same properties as a selection for now.
* ENH: Fix SyntaxError when matrix() is called with invalid stringLeon Weber2013-05-291-0/+4
| | | | | | | | | | | | The numpy.matrix constructor uses eval(str.translate(table)) to convert input strings to numeric matrix contents. str.translate(table) will return empty string if str consists only of invalid characters, causing SyntaxError in eval(). This is confusing, as one would expect an exception like TypeError when trying to construct a matrix from invalid input. This fix makes sure eval() is only called if str is not empty and TypeError is raised otherwise.
* 2to3: Apply `print` fixer.Charles Harris2013-04-064-4/+4
| | | | | | | Add `print_function` to all `from __future__ import ...` statements and use the python3 print function syntax everywhere. Closes #3078.
* 2to3: Use absolute imports.Charles Harris2013-03-284-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new import `absolute_import` is added the `from __future__ import` statement and The 2to3 `import` fixer is run to make the imports compatible. There are several things that need to be dealt with to make this work. 1) Files meant to be run as scripts run in a different environment than files imported as part of a package, and so changes to those files need to be skipped. The affected script files are: * all setup.py files * numpy/core/code_generators/generate_umath.py * numpy/core/code_generators/generate_numpy_api.py * numpy/core/code_generators/generate_ufunc_api.py 2) Some imported modules are not available as they are created during the build process and consequently 2to3 is unable to handle them correctly. Files that import those modules need a bit of extra work. The affected files are: * core/__init__.py, * core/numeric.py, * core/_internal.py, * core/arrayprint.py, * core/fromnumeric.py, * numpy/__init__.py, * lib/npyio.py, * lib/function_base.py, * fft/fftpack.py, * random/__init__.py Closes #3172
* 2to3: Replace xrange by range and use list(range(...)) where neededCharles Harris2013-03-271-2/+2
| | | | | | | | | | | | | | | In python3 range is an iterator and `xrange` has been removed. This has two consequence for code: 1) Where a list is needed `list(range(...))` must be used. 2) `xrange` must be replaced by `range` Both of these changes also work in python2 and this patch makes both. There are three places fixed that do not need it, but I left them in so that the result would be `xrange` clean. Closes #3092
* 2to3: Put `from __future__ import division in every python file.Charles Harris2013-03-014-0/+8
| | | | | | | | This should be harmless, as we already are division clean. However, placement of this import takes some care. In the future a script can be used to append new features without worry, at least until such time as it exceeds a single line. Having that ability will make it easier to deal with absolute imports and printing updates.
* 2to3: Fix callable.Charles Harris2013-02-281-1/+2
|
* ENH: missingdata: Change things to help scipy pass its testsMark Wiebe2011-08-271-10/+26
| | | | Improving the NumPy tests a bit to catch these errors better...
* STY: Replace assert by assert_ in tests. There remain 124 uses ofCharles Harris2011-04-053-80/+80
| | | | assert in non-testing files that should be checked for correctness.
* ENH: core: Change PyArray_CopyAnyInto and PyArray_MoveAnyInto to use the new ↵Mark Wiebe2011-01-171-1/+1
| | | | | | | | iterator I also found that the tricky case of CopyAnyInto wasn't being triggered by the test suite, so added a new function ndarray.setasflat, which calls CopyAnyInto.
* ENH: core: add .dot() method to ndarrays; a.dot(b) == np.dot(a, b)Pauli Virtanen2010-04-301-2/+3
|
* DEP: Fix deprecation warnings in Python 3.1. The warnings come from the unittestCharles Harris2010-02-201-1/+1
| | | | | | | | | module. The fix should be good for Python >= 2.4 and used the following sed script: s/\<failUnless\>/assertTrue/g s/\<failIf\>/assertFalse/g s/\<failUnlessEqual\>/assertEqual/g s/\<failUnlessRaises\>/assertRaises/g
* Rename matrx to matrixlib.David Cournapeau2009-09-184-0/+432
I forgot to commit the name change suggested by Stefan. You need to clean build/install directory when updating to this version.