TF 2.0 is out! Get hands-on practice at TF World, Oct 28-31. Use code TF20 for 20% off select passes. Register now


TensorFlow 1 version View source on GitHub

Reorders a SparseTensor into the canonical, row-major ordering.


  • tf.compat.v1.sparse.reorder
  • tf.compat.v1.sparse_reorder
  • tf.compat.v2.sparse.reorder

Note that by convention, all sparse ops preserve the canonical ordering along increasing dimension number. The only time ordering can be violated is during manual manipulation of the indices and values to add entries.

Reordering does not affect the shape of the SparseTensor.

For example, if sp_input has shape [4, 5] and indices / values:

[0, 3]: b
[0, 1]: a
[3, 1]: d
[2, 0]: c

then the output will be a SparseTensor of shape [4, 5] and indices / values:

[0, 1]: a
[0, 3]: b
[2, 0]: c
[3, 1]: d


  • sp_input: The input SparseTensor.
  • name: A name prefix for the returned tensors (optional)


A SparseTensor with the same shape and non-empty values, but in canonical ordering.


  • TypeError: If sp_input is not a SparseTensor.