Compute the cumulative sum of the tensor `x`

along `axis`

.

tf.raw_ops.Cumsum( x, axis, exclusive=False, reverse=False, name=None )

By default, this op performs an inclusive cumsum, which means that the first element of the input is identical to the first element of the output:

tf.cumsum([a, b, c]) # => [a, a + b, a + b + c]

By setting the `exclusive`

kwarg to `True`

, an exclusive cumsum is performed instead:

tf.cumsum([a, b, c], exclusive=True) # => [0, a, a + b]

By setting the `reverse`

kwarg to `True`

, the cumsum is performed in the opposite direction:

tf.cumsum([a, b, c], reverse=True) # => [a + b + c, b + c, c]

This is more efficient than using separate `tf.reverse`

ops.

The `reverse`

and `exclusive`

kwargs can also be combined:

tf.cumsum([a, b, c], exclusive=True, reverse=True) # => [b + c, c, 0]

Args | |
---|---|

`x` | A `Tensor` . Must be one of the following types: `float32` , `float64` , `int32` , `uint8` , `int16` , `int8` , `complex64` , `int64` , `qint8` , `quint8` , `qint32` , `bfloat16` , `uint16` , `complex128` , `half` , `uint32` , `uint64` . A `Tensor` . Must be one of the following types: `float32` , `float64` , `int64` , `int32` , `uint8` , `uint16` , `int16` , `int8` , `complex64` , `complex128` , `qint8` , `quint8` , `qint32` , `half` . |

`axis` | A `Tensor` . Must be one of the following types: `int32` , `int64` . A `Tensor` of type `int32` (default: 0). Must be in the range `[-rank(x), rank(x))` . |

`exclusive` | An optional `bool` . Defaults to `False` . If `True` , perform exclusive cumsum. |

`reverse` | An optional `bool` . Defaults to `False` . A `bool` (default: False). |

`name` | A name for the operation (optional). |

Returns | |
---|---|

A `Tensor` . Has the same type as `x` . |

© 2020 The TensorFlow Authors. All rights reserved.

Licensed under the Creative Commons Attribution License 3.0.

Code samples licensed under the Apache 2.0 License.

https://www.tensorflow.org/versions/r2.4/api_docs/python/tf/raw_ops/Cumsum