Functions | |
template<class E> | |
auto | xt::transpose (E &&e) noexcept |
Returns a transpose view by reversing the dimensions of xexpression e. | |
template<class E, class S, class Tag = check_policy::none> | |
auto | xt::transpose (E &&e, S &&permutation, Tag check_policy) |
Returns a transpose view by permuting the xexpression e with permutation . | |
template<class E> | |
auto | xt::swapaxes (E &&e, std::ptrdiff_t axis1, std::ptrdiff_t axis2) |
Return a new expression with two axes interchanged. | |
template<class E> | |
auto | xt::moveaxis (E &&e, std::ptrdiff_t src, std::ptrdiff_t dest) |
Return a new expression with an axis move to a new position. | |
template<layout_type L = ::xt::layout_type::row_major, class E> | |
auto | xt::ravel (E &&e) |
Return a flatten view of the given expression. | |
template<layout_type L = ::xt::layout_type::row_major, class E> | |
auto | xt::flatten (E &&e) |
Return a flatten view of the given expression. | |
template<class E> | |
auto | xt::trim_zeros (E &&e, const std::string &direction) |
Trim zeros at beginning, end or both of 1D sequence. | |
template<class E> | |
auto | xt::squeeze (E &&e) |
Returns a squeeze view of the given expression. | |
template<class E, class S, class Tag = check_policy::none, std::enable_if_t<!xtl::is_integral< S >::value, int > = 0> | |
auto | xt::squeeze (E &&e, S &&axis, Tag check_policy) |
Remove single-dimensional entries from the shape of an xexpression. | |
template<class E> | |
auto | xt::expand_dims (E &&e, std::size_t axis) |
Expand the shape of an xexpression. | |
template<std::size_t N, class E> | |
auto | xt::atleast_Nd (E &&e) |
Expand dimensions of xexpression to at least N | |
template<class E> | |
auto | xt::atleast_1d (E &&e) |
Expand to at least 1D. | |
template<class E> | |
auto | xt::atleast_2d (E &&e) |
Expand to at least 2D. | |
template<class E> | |
auto | xt::atleast_3d (E &&e) |
Expand to at least 3D. | |
template<class E> | |
auto | xt::split (E &e, std::size_t n, std::size_t axis) |
Split xexpression along axis into subexpressions. | |
template<class E> | |
auto | xt::hsplit (E &e, std::size_t n) |
Split an xexpression into subexpressions horizontally (column-wise) | |
template<class E> | |
auto | xt::vsplit (E &e, std::size_t n) |
Split an xexpression into subexpressions vertically (row-wise) | |
template<class E> | |
auto | xt::flip (E &&e) |
Reverse the order of elements in an xexpression along every axis. | |
template<class E> | |
auto | xt::flip (E &&e, std::size_t axis) |
Reverse the order of elements in an xexpression along the given axis. | |
template<std::ptrdiff_t N = 1, class E> | |
auto | xt::rot90 (E &&e, const std::array< std::ptrdiff_t, 2 > &axes) |
Rotate an array by 90 degrees in the plane specified by axes. | |
template<class E> | |
auto | xt::roll (E &&e, std::ptrdiff_t shift) |
Roll an expression. | |
template<class E> | |
auto | xt::roll (E &&e, std::ptrdiff_t shift, std::ptrdiff_t axis) |
Roll an expression along a given axis. | |
template<class E> | |
auto | xt::repeat (E &&e, std::size_t repeats, std::size_t axis) |
Repeat elements of an expression along a given axis. | |
template<class E> | |
auto | xt::repeat (E &&e, const std::vector< std::size_t > &repeats, std::size_t axis) |
Repeat elements of an expression along a given axis. | |
template<class E> | |
auto | xt::repeat (E &&e, std::vector< std::size_t > &&repeats, std::size_t axis) |
Repeat elements of an expression along a given axis. | |
|
inline |
|
inline |
|
inline |
|
inline |
Expand dimensions of xexpression to at least N
This adds newaxis()
slices to a strided_view
until the dimension of the view reaches at least N
. Note: dimensions are added equally at the beginning and the end. For example, a 1-D array of shape (N,) becomes a view of shape (1, N, 1).
e | input xexpression |
N | the number of requested dimensions |
strided_view
with expanded dimensions Definition at line 658 of file xmanipulation.hpp.
|
inline |
Expand the shape of an xexpression.
Insert a new axis that will appear at the axis position in the expanded array shape. This will return a strided_view
with a xt::newaxis()
at the indicated axis.
e | input xexpression |
axis | axis to expand |
strided_view
with expanded dimension Definition at line 633 of file xmanipulation.hpp.
|
inline |
Return a flatten view of the given expression.
No copy is made. This method is equivalent to ravel and is provided for API sameness with NumPy.
e | the input expression |
L | the layout used to read the elements of e. If no parameter is specified, XTENSOR_DEFAULT_TRAVERSAL is used. |
E | the type of the expression |
Definition at line 442 of file xmanipulation.hpp.
|
inline |
Reverse the order of elements in an xexpression along every axis.
e | the input xexpression |
Definition at line 800 of file xmanipulation.hpp.
|
inline |
Reverse the order of elements in an xexpression along the given axis.
Note: A NumPy/Matlab style flipud(arr)
is equivalent to xt::flip(arr, 0)
, fliplr(arr)
to xt::flip(arr, 1)
.
e | the input xexpression |
axis | the axis along which elements should be reversed |
Definition at line 823 of file xmanipulation.hpp.
|
inline |
Split an xexpression into subexpressions horizontally (column-wise)
This method is equivalent to split(e, n, 1)
.
e | input xexpression |
n | number of elements to return |
Definition at line 768 of file xmanipulation.hpp.
|
inline |
Return a new expression with an axis move to a new position.
e | The input expression |
src | Original position of the axis to move |
dest | Destination position for the original axis. |
Definition at line 368 of file xmanipulation.hpp.
|
inline |
Return a flatten view of the given expression.
No copy is made.
e | the input expression |
L | the layout used to read the elements of e. If no parameter is specified, XTENSOR_DEFAULT_TRAVERSAL is used. |
E | the type of the expression |
Definition at line 417 of file xmanipulation.hpp.
|
inline |
Repeat elements of an expression along a given axis.
e | the input xexpression |
repeats | The number of repetition of each elements. The size of repeats must match the shape of the given axis . |
axis | the axis along which to repeat the value |
Definition at line 1123 of file xmanipulation.hpp.
|
inline |
Repeat elements of an expression along a given axis.
e | the input xexpression |
repeats | The number of repetition of each elements. repeats is broadcasted to fit the shape of the given axis . |
axis | the axis along which to repeat the value |
Definition at line 1103 of file xmanipulation.hpp.
|
inline |
Repeat elements of an expression along a given axis.
e | the input xexpression |
repeats | The number of repetition of each elements. The size of repeats must match the shape of the given axis . |
axis | the axis along which to repeat the value |
Definition at line 1139 of file xmanipulation.hpp.
|
inline |
Roll an expression.
The expression is flatten before shifting, after which the original shape is restore. Elements that roll beyond the last position are re-introduced at the first. This function does not change the input expression.
e | the input xexpression |
shift | the number of places by which elements are shifted |
Definition at line 952 of file xmanipulation.hpp.
|
inline |
Roll an expression along a given axis.
Elements that roll beyond the last position are re-introduced at the first. This function does not change the input expression.
e | the input xexpression |
shift | the number of places by which elements are shifted |
axis | the axis along which elements are shifted. |
Definition at line 1049 of file xmanipulation.hpp.
|
inline |
Rotate an array by 90 degrees in the plane specified by axes.
Rotation direction is from the first towards the second axis.
e | the input xexpression |
axes | the array is rotated in the plane defined by the axes. Axes must be different. |
N | number of times the array is rotated by 90 degrees. Default is 1. |
Definition at line 919 of file xmanipulation.hpp.
|
inline |
Split xexpression along axis into subexpressions.
This splits an xexpression along the axis in n
equal parts and returns a vector of strided_view
. Calling split with axis > dimension of e or a n
that does not result in an equal division of the xexpression will throw a runtime_error.
e | input xexpression |
n | number of elements to return |
axis | axis along which to split the expression |
Definition at line 732 of file xmanipulation.hpp.
|
inline |
Returns a squeeze view of the given expression.
No copy is made. Squeezing an expression removes dimensions of extent 1.
e | the input expression |
E | the type of the expression |
Definition at line 513 of file xmanipulation.hpp.
|
inline |
Remove single-dimensional entries from the shape of an xexpression.
e | input xexpression |
axis | integer or container of integers, select a subset of single-dimensional entries of the shape. |
check_policy | select check_policy. With check_policy::full(), selecting an axis which is greater than one will throw a runtime_error. |
Definition at line 592 of file xmanipulation.hpp.
|
inline |
Return a new expression with two axes interchanged.
The two axis parameter axis
and axis2
are interchangable.
e | The input expression |
axis1 | First axis to swap |
axis2 | Second axis to swap |
Definition at line 314 of file xmanipulation.hpp.
|
inlinenoexcept |
Returns a transpose view by reversing the dimensions of xexpression e.
e | the input expression |
Definition at line 237 of file xmanipulation.hpp.
|
inline |
Returns a transpose view by permuting the xexpression e with permutation
.
e | the input expression |
permutation | the sequence containing permutation |
check_policy | the check level (check_policy::full() or check_policy::none()) |
Tag | selects the level of error checking on permutation vector defaults to check_policy::none. |
Definition at line 269 of file xmanipulation.hpp.
|
inline |
Trim zeros at beginning, end or both of 1D sequence.
e | input xexpression |
direction | string of either 'f' for trim from beginning, 'b' for trim from end or 'fb' (default) for both. |
Definition at line 475 of file xmanipulation.hpp.
|
inline |
Split an xexpression into subexpressions vertically (row-wise)
This method is equivalent to split(e, n, 0)
.
e | input xexpression |
n | number of elements to return |
Definition at line 783 of file xmanipulation.hpp.