xtensor
|
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. | |
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.
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.
Reverse the order of elements in an xexpression along every axis.
e | the input xexpression |
Definition at line 800 of file xmanipulation.hpp.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Returns a transpose view by reversing the dimensions of xexpression e.
e | the input expression |
Definition at line 237 of file xmanipulation.hpp.
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.
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.
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.