diff --git a/doc/fluid/api/tensor/unique.rst b/doc/fluid/api/tensor/unique.rst index af775cf91af6c155c1df217477b4c9bd3211a850..fe8be883a3f7537cb01815ec978455f5908ea355 100644 --- a/doc/fluid/api/tensor/unique.rst +++ b/doc/fluid/api/tensor/unique.rst @@ -1,7 +1,10 @@ -.. _api_tensor_cn_unique: +.. THIS FILE IS GENERATED BY `gen_doc.{py|sh}` + !DO NOT EDIT THIS FILE MANUALLY! -unique -------------------------------- -:doc_source: paddle.fluid.layers.unique +.. _api_tensor_manipulation_unique: +unique +-------- +.. autofunction:: paddle.tensor.manipulation.unique + diff --git a/doc/fluid/api_cn/layers_cn/unique_cn.rst b/doc/fluid/api_cn/layers_cn/unique_cn.rst index 0877f8686aa1101fff05377404492f8d45aa493f..bf346ec2e43f4f2b04e117c32b39f9013fe688fa 100644 --- a/doc/fluid/api_cn/layers_cn/unique_cn.rst +++ b/doc/fluid/api_cn/layers_cn/unique_cn.rst @@ -5,17 +5,11 @@ unique .. py:function:: paddle.fluid.layers.unique(x, dtype='int32') -:alias_main: paddle.unique -:alias: paddle.unique,paddle.tensor.unique,paddle.tensor.manipulation.unique -:old_api: paddle.fluid.layers.unique - - - unique为 ``x`` 返回一个unique张量和一个指向该unique张量的索引。 参数: - - **x** (Variable) - 一个1维输入张量 - - **dtype** (np.dtype|core.VarDesc.VarType|str) – 索引张量的类型,int32,int64。 + - **x** (Tensor) - 一个1维输入张量 + - **dtype** (np.dtype|str) – 索引张量的类型,int32,int64。 返回:元组(out, index)。 ``out`` 为 ``x`` 的指定dtype的unique张量, ``index`` 是一个指向 ``out`` 的索引张量, 用户可以通过该函数来转换原始的 ``x`` 张量的索引。 diff --git a/doc/fluid/api_cn/paddle_cn/unique_cn.rst b/doc/fluid/api_cn/paddle_cn/unique_cn.rst index a4230abdc6095e301c74a36e3d553b6e5e09d242..bfb9216ea2220202909dc019ede1df04046d7d8f 100644 --- a/doc/fluid/api_cn/paddle_cn/unique_cn.rst +++ b/doc/fluid/api_cn/paddle_cn/unique_cn.rst @@ -2,6 +2,6 @@ unique ------------------------------- -:doc_source: paddle.fluid.layers.unique +:doc_source: paddle.tensor.unique diff --git a/doc/fluid/api_cn/tensor_cn/unique_cn.rst b/doc/fluid/api_cn/tensor_cn/unique_cn.rst index 449302b9ba3dc441d6c332d87bd0573f8190f145..59c5f8e0f07d208a6c58c7b546df613799455298 100644 --- a/doc/fluid/api_cn/tensor_cn/unique_cn.rst +++ b/doc/fluid/api_cn/tensor_cn/unique_cn.rst @@ -2,6 +2,51 @@ unique ------------------------------- -:doc_source: paddle.fluid.layers.unique + +.. py:function:: paddle.unique(x, return_index=False, return_inverse=False, return_counts=False, axis=None, name=None) + +返回Tensor按升序排序后的独有元素。 + +参数: + - **x** (Tensor) - 输入的 `Tensor` ,数据类型为:float32、float64、int32、int64。 + - **return_index** (bool, 可选) - 如果为True,则还返回独有元素在输入Tensor中的索引。 + - **return_inverse** (bool, 可选) - 如果为True,则还返回输入Tensor的元素对应在独有元素中的索引,该索引可用于重构输入Tensor。 + - **return_counts** (bool, 可选) - 如果为True,则还返回每个独有元素在输入Tensor中的个数。 + - **axis** (int, 可选) - 指定选取独有元素的轴。默认值为None,将输入平铺为1-D的Tensor后再选取独有元素。 + - **name** (str,可选)- 具体用法请参见 :ref:`api_guide_Name` ,一般无需设置,默认值为None。 + +返回: + - **out** (Tensor) - 独有元素构成的Tensor,数据类型与输入一致。 + - **index** (Tensor, 可选) - 独有元素在输入Tensor中的索引,仅在 `return_index` 为True时返回。 + - **inverse** (Tensor, 可选) - 输入Tensor的元素对应在独有元素中的索引,仅在 `return_inverse` 为True时返回。 + - **counts** (Tensor, 可选) - 每个独有元素在输入Tensor中的个数,仅在 `return_counts` 为True时返回。 + +**代码示例**: + +.. code-block:: python + + import numpy as np + import paddle + + paddle.disable_static() + x_data = np.array([2, 3, 3, 1, 5, 3]) + x = paddle.to_tensor(x_data) + unique = paddle.unique(x) + np_unique = unique.numpy() # [1 2 3 5] + _, indices, inverse, counts = paddle.unique(x, return_index=True, return_inverse=True, return_counts=True) + np_indices = indices.numpy() # [3 0 1 4] + np_inverse = inverse.numpy() # [1 2 2 0 3 2] + np_counts = counts.numpy() # [1 1 3 1] + + x_data = np.array([[2, 1, 3], [3, 0, 1], [2, 1, 3]]) + x = paddle.to_tensor(x_data) + unique = paddle.unique(x) + np_unique = unique.numpy() # [0 1 2 3] + + unique = paddle.unique(x, axis=0) + np_unique = unique.numpy() + # [[2 1 3] + # [3 0 1]] +