diff --git a/docs/api/paddle/Overview_cn.rst b/docs/api/paddle/Overview_cn.rst index 30472846ce8..9b0dbc5c621 100755 --- a/docs/api/paddle/Overview_cn.rst +++ b/docs/api/paddle/Overview_cn.rst @@ -113,6 +113,7 @@ tensor数学操作 " :ref:`paddle.diagonal ` ", "根据给定的轴 axis 返回输入 Tensor 的局部视图" " :ref:`paddle.trunc ` ", "对输入 Tensor 每个元素的小数部分进行截断" " :ref:`paddle.log1p ` ", "该OP计算Log1p(加一的自然对数)结果" + " :ref:`paddle.diff ` ", "沿着指定维度对输入Tensor计算n阶的前向差值" " :ref:`paddle.rad2deg ` ", "将元素从弧度的角度转换为度" " :ref:`paddle.deg2rad ` ", "将元素从度的角度转换为弧度" diff --git a/docs/api/paddle/Tensor/Overview_en.rst b/docs/api/paddle/Tensor/Overview_en.rst index d78dd3e9883..2e5b70819b8 100644 --- a/docs/api/paddle/Tensor/Overview_en.rst +++ b/docs/api/paddle/Tensor/Overview_en.rst @@ -114,6 +114,7 @@ Methods dist divide dot + diff eigvals equal equal_all @@ -144,6 +145,7 @@ Methods index_sample index_select inverse + isclose is_empty is_tensor isfinite diff --git a/docs/api/paddle/Tensor_cn.rst b/docs/api/paddle/Tensor_cn.rst index ef5717b3eb5..a38bd8f8038 100755 --- a/docs/api/paddle/Tensor_cn.rst +++ b/docs/api/paddle/Tensor_cn.rst @@ -280,6 +280,15 @@ allclose(y, rtol=1e-05, atol=1e-08, equal_nan=False, name=None) 请参考 :ref:`cn_api_tensor_allclose` +isclose(x, y, rtol=1e-05, atol=1e-08, equal_nan=False, name=None) +::::::::: + +返回:计算后的Tensor + +返回类型:Tensor + +请参考 :ref:`cn_api_tensor_isclose` + any(axis=None, keepdim=False, name=None) ::::::::: @@ -768,6 +777,15 @@ dot(y, name=None) 请参考 :ref:`cn_api_paddle_tensor_linalg_dot` +diff(x, n=1, axis=-1, prepend=None, append=None, name=None) +::::::::: + +返回:计算后的Tensor + +返回类型:Tensor + +请参考 :ref:`cn_api_tensor_diff` + equal(y, name=None) ::::::::: diff --git a/docs/api/paddle/diff_cn.rst b/docs/api/paddle/diff_cn.rst new file mode 100644 index 00000000000..53bd5f30243 --- /dev/null +++ b/docs/api/paddle/diff_cn.rst @@ -0,0 +1,54 @@ +.. _cn_api_tensor_diff: + +diff +------------------------------- + +.. py:function:: paddle.diff(x, n=1, axis=-1, prepend=None, append=None, name=None) + +沿着指定轴计算输入Tensor的n阶前向差值,一阶的前向差值计算公式如下: + +.. math:: + out[i] = x[i+1] - x[i] + +.. note:: + 高阶的前向差值可以通过递归的方式进行计算,目前只支持 n=1。 + +参数: +::::::::: + + - **x** (Tensor) - 待计算前向差值的输入 `Tensor`。 + - **n** (int, 可选) - 需要计算前向差值的次数,目前仅支持 `n=1`,默认值为1。 + - **axis** (int, 可选) - 沿着哪一维度计算前向差值,默认值为-1,也即最后一个维度。 + - **prepend** (Tensor, 可选) - 在计算前向差值之前,沿着指定维度axis附加到输入x的前面,它的维度需要和输入一致,并且除了axis维外,其他维度的形状也要和输入一致,默认值为None。 + - **append** (Tensor, 可选) - 在计算前向差值之前,沿着指定维度axis附加到输入x的后面,它的维度需要和输入一致,并且除了axis维外,其他维度的形状也要和输入一致,默认值为None。 + - **name** (str,可选)- 具体用法请参见 :ref:`api_guide_Name` ,一般无需设置,默认值为None。 + +返回 +::::::::: +前向差值计算后的Tensor,数据类型和输入一致。 + +代码示例: +::::::::: + +.. code-block:: python + + import paddle + x = paddle.to_tensor([1, 4, 5, 2]) + out = paddle.diff(x) + print(out) + # out: + # [3, 1, -3] + y = paddle.to_tensor([7, 9]) + out = paddle.diff(x, append=y) + print(out) + # out: + # [3, 1, -3, 5, 2] + z = paddle.to_tensor([[1, 2, 3], [4, 5, 6]]) + out = paddle.diff(z, axis=0) + print(out) + # out: + # [[3, 3, 3]] + out = paddle.diff(z, axis=1) + print(out) + # out: + # [[1, 1], [1, 1]] \ No newline at end of file