| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
Behavior goes back at least to 1.6.2.
Fixes #6367.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Most of these fixes involve putting blank lines around
.. versionadded:: x.x.x
and
.. deprecated:: x.x.x
Some of the examples were also fixed.
|
| |
|
|
|
|
|
|
|
| |
Update docs for boolean array indexing and nonzero order.
Add links to row-major and column-major terms where they appear.
Closes #3177
|
|
|
|
|
| |
Document the matmul function and add '@' to the operator
section of the reference manual.
|
|
|
|
| |
Closes #5927
|
|\
| |
| | |
ENH: add np.stack
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The motivation here is to present a uniform and N-dimensional interface for
joining arrays along a new axis, similarly to how `concatenate` provides a
uniform and N-dimensional interface for joining arrays along an existing axis.
Background
~~~~~~~~~~
Currently, users can choose between `hstack`, `vstack`, `column_stack` and
`dstack`, but none of these functions handle N-dimensional input. In my
opinion, it's also difficult to keep track of the differences between these
methods and to predict how they will handle input with different
dimensions.
In the past, my preferred approach has been to either construct the result
array explicitly and use indexing for assignment, to or use `np.array` to
stack along the first dimension and then use `transpose` (or a similar method)
to reorder dimensions if necessary. This is pretty awkward.
I brought this proposal up a few weeks on the numpy-discussion list:
http://mail.scipy.org/pipermail/numpy-discussion/2015-February/072199.html
I also received positive feedback on Twitter:
https://twitter.com/shoyer/status/565937244599377920
Implementation notes
~~~~~~~~~~~~~~~~~~~~
The one line summaries for `concatenate` and `stack` have been (re)written to
mirror each other, and to make clear that the distinction between these functions
is whether they join over an existing or new axis.
In general, I've tweaked the documentation and docstrings with an eye toward
pointing users to `concatenate`/`stack`/`split` as a fundamental set of basic
array manipulation routines, and away from
`array_split`/`{h,v,d}split`/`{h,v,d,column_}stack`
I put this implementation in `numpy.core.shape_base` alongside `hstack`/`vstack`,
but it appears that there is also a `numpy.lib.shape_base` module that contains
another larger set of functions, including `dstack`. I'm not really sure where
this belongs (or if it even matters).
Finally, it might be a good idea to write a masked array version of `stack`.
But I don't use masked arrays, so I'm not well motivated to do that.
|
|/
|
|
|
|
|
|
|
|
| |
Modified the docstrings to all, any, sum, prod, mean, var, std, min, max
to add keepdims argument.
Added 'out' keyword parameter to numpy.argmin, numpy.argmax, to mirror
ndarray methods.
Updated ndarray.clip docstring to give correct parameter description.
|
|\
| |
| | |
Array docstring now lists correct order default
|
| |
| |
| |
| | |
Fixes #5306
|
| | |
|
|\ \
| | |
| | | |
merge _compiled_base module into multiarray
|
| | |
| | |
| | |
| | | |
Allows access to internal functions for the file.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This update adds a section better describing record arrays in the user
guide (numpy/doc/structured_arrays.py).
It also corrects nomenclature, such that "structured array" refers to
ndarrays with structured dtype, "record array" refers to modified
ndarrays as created by np.rec.array, and "recarray" refers to ndarrays
viewed as np.recarray. See the note at the end of the structured
array user guide.
|
|/
|
|
|
| |
the corresponding docstring.
Also added an example showing how to write to the diagonal of an array.
|
| |
|
| |
|
| |
|
|\
| |
| | |
DOC: remove preservena reference from docstrings
|
| |
| |
| |
| |
| |
| |
| | |
preservena is not not implemented.
the putmask docstring is misleading, currently copyto is faster for
dense or sparse masks while putmask is faster for random masks.
[ci skip]
|
| |
| |
| |
| |
| | |
Also move docstrings into the versions in numpy/core/numeric.py as
the functions are no longer in the defunct _dotblas module.
|
| | |
|
|/
|
|
| |
The function returns bytes not strings. This is relevant in python3.
|
|
|
|
| |
"one of 'biufcSUV'" is not very helpful if it stands alone,
also the 'O' typecode was missing.
|
|
|
|
| |
the default algorithm is introselect
|
|
|
|
|
|
|
|
|
| |
The documentation needs to be in umathmodule.c as that is where ldexp
and frexp and defined. I moved the current documention from
add_newdocs.py to ufunc_docstrings.py, manually translated them into C
strings, and inserted them into umathmodule.c.
Closes #2354.
|
|
|
|
|
|
| |
- promote_types does not return correct string size for integer and string arguments. Fix so that integer and string types are promoted to string type that is long enough to hold integer type safely cast to string.
- can_cast incorrectly returns True for certain integer and string types. Fix so that can_cast only returns True if string type is long enough to hold integer type safely cast to string.
- calling astype to convert integer to string should fail if string type is not long enough to hold integer converted to string and casting argument is set to "safe".
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
reduceat does not allow out-of-bounds indices currently
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In a case where 'ik,kj->ij' works, einsum would raise an error for
'ik,k...->i...' because the 'ik' did not have ellipsis
In einsum.c.src prepare_op_axes() pass all 'broadcast' cases through the
'RIGHT' case (interation from the end).
Since the BROADCAST variable is not longer needed, all instances of it have
been removed from einsum.c.src
test_einsum.py - adds a test_einsum_broadcast case.
|
|
|
| |
This matches the format of related functions like `empty_like` and `zeros`.
|
|
|
|
| |
also drop sometrue/alltrue link, its equivalent to any/all.
|
|
|
|
|
|
|
| |
Also remove the test_diagonal_deprecation test and add test that
checks that a view is returned and that it is not writeable.
Closes #596.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Now is as good a time as any with open PR's at a low.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
memmap needs to call it in __array_finalize__ to determine if it can
drop the references on copies.
The python version if may_share_memory caused significant slowdowns when
slicing these maps.
closes gh-3364
|
| |
|
|
|
|
|
|
|
| |
Add `print_function` to all `from __future__ import ...` statements
and use the python3 print function syntax everywhere.
Closes #3078.
|