tf.ragged.range(
starts,
limits=None,
deltas=1,
dtype=None,
name=None
)
Defined in tensorflow/python/ops/ragged/ragged_math_ops.py.
Returns a RaggedTensor containing the specified sequences of numbers.
Each row of the returned RaggedTensor contains a single sequence:
ragged.range(starts, limits, deltas)[i] ==
tf.range(starts[i], limits[i], deltas[i])
If start[i] < limits[i] and deltas[i] > 0, then output[i] will be an
empty list. Similarly, if start[i] > limits[i] and deltas[i] < 0, then
output[i] will be an empty list. This behavior is consistent with the
Python range function, but differs from the tf.range op, which returns
an error for these cases.
Examples:
>>> ragged.range([3, 5, 2]).eval().tolist()
[[0, 1, 2], [0, 1, 2, 3, 4], [0, 1]]
>>> ragged.range([0, 5, 8], [3, 3, 12]).eval().tolist()
[[0, 1, 2], [], [8, 9, 10, 11]]
>>> ragged.range([0, 5, 8], [3, 3, 12], 2).eval().tolist()
[[0, 2], [], [8, 10]]
The input tensors starts, limits, and deltas may be scalars or vectors.
The vector inputs must all have the same size. Scalar inputs are broadcast
to match the size of the vector inputs.
Args:
starts: Vector or scalarTensor. Specifies the first entry for each range iflimitsis notNone; otherwise, specifies the range limits, and the first entries default to0.limits: Vector or scalarTensor. Specifies the exclusive upper limits for each range.deltas: Vector or scalarTensor. Specifies the increment for each range. Defaults to1.dtype: The type of the elements of the resulting tensor. If not specified, then a value is chosen based on the other args.name: A name for the operation.
Returns:
A RaggedTensor of type dtype with ragged_rank=1.