|
|
|
@@ -75,28 +75,30 @@ class Slice(cde.SliceOp): |
|
|
|
Slice operation to extract a tensor out using the given n slices. |
|
|
|
|
|
|
|
The functionality of Slice is similar to NumPy indexing feature. |
|
|
|
(Currently only rank 1 Tensors are supported) |
|
|
|
(Currently only rank-1 tensors are supported). |
|
|
|
|
|
|
|
Args: |
|
|
|
*slices(Variable length argument list): Maximum `n` number of arguments to slice a tensor of rank `n`. |
|
|
|
*slices(Variable length argument list, supported types are, int, list(int), slice, None or Ellipses): |
|
|
|
Maximum `n` number of arguments to slice a tensor of rank `n`. |
|
|
|
One object in slices can be one of: |
|
|
|
1. int: slice this index only. Negative index is supported. |
|
|
|
2. slice object: slice the generated indices from the slice object. Similar to `start:stop:step`. |
|
|
|
3. None: slice the whole dimension. Similar to `:` in python indexing. |
|
|
|
4. Ellipses ...: slice all dimensions between the two slices. |
|
|
|
1. :py:obj:`int`: Slice this index only. Negative index is supported. |
|
|
|
2. :py:obj:`list(int)`: Slice these indices ion the list only. Negative indices are supdeported. |
|
|
|
3. :py:obj:`slice`: Slice the generated indices from the slice object. Similar to `start:stop:step`. |
|
|
|
4. :py:obj:`None`: Slice the whole dimension. Similar to `:` in python indexing. |
|
|
|
5. :py:obj:`Ellipses`: Slice all dimensions between the two slices. Similar to `...` in python indexing. |
|
|
|
|
|
|
|
Examples: |
|
|
|
>>> # Data before |
|
|
|
>>> # | col | |
|
|
|
>>> # +---------+ |
|
|
|
>>> # | [1,2,3] | |
|
|
|
>>> # +---------| |
|
|
|
>>> data = data.map(operations=Slice(slice(1,3))) # slice indices 1 and 2 only |
|
|
|
>>> # Data after |
|
|
|
>>> # | col | |
|
|
|
>>> # +------------+ |
|
|
|
>>> # | [1,2] | |
|
|
|
>>> # +------------| |
|
|
|
>>> # Data before |
|
|
|
>>> # | col | |
|
|
|
>>> # +---------+ |
|
|
|
>>> # | [1,2,3] | |
|
|
|
>>> # +---------| |
|
|
|
>>> data = data.map(operations=Slice(slice(1,3))) # slice indices 1 and 2 only |
|
|
|
>>> # Data after |
|
|
|
>>> # | col | |
|
|
|
>>> # +---------+ |
|
|
|
>>> # | [2,3] | |
|
|
|
>>> # +---------| |
|
|
|
""" |
|
|
|
|
|
|
|
@check_slice_op |
|
|
|
@@ -167,7 +169,7 @@ class PadEnd(cde.PadEndOp): |
|
|
|
Pad input tensor according to `pad_shape`, need to have same rank. |
|
|
|
|
|
|
|
Args: |
|
|
|
pad_shape (list of `int`): list on integers representing the shape needed. Dimensions that set to `None` will |
|
|
|
pad_shape (list(int)): list on integers representing the shape needed. Dimensions that set to `None` will |
|
|
|
not be padded (i.e., original dim will be used). Shorter dimensions will truncate the values. |
|
|
|
pad_value (python types (str, bytes, int, float, or bool), optional): value used to pad. Default to 0 or empty |
|
|
|
string in case of Tensors of strings. |
|
|
|
|