nan_to_num¶
替换 x 中的 NaN、+inf、-inf 为指定值。
参数¶
x (Tensor) - 输入变量,类型为 Tensor, 支持 float32、float64 数据类型。
nan (float,可选) - NaN 的替换值,默认为 0。
posinf (float,可选) - +inf 的替换值,默认为 None,表示使用输入 Tensor 的数据类型所能表示的最大值作为 +inf 的替换值。
neginf (float,可选) - -inf 的替换值,默认为 None,表示使用输入 Tensor 的数据类型所能表示的最小值作为 -inf 的替换值。
name (str,可选) - 具体用法请参见 Name ,一般无需设置,默认值为 None。
返回¶
Tensor (Tensor),将输入 Tensor 中的 NaN、+inf、-inf 替换后的结果。
代码示例¶
import paddle
x = paddle.to_tensor([float('nan'), 0.3, float('+inf'), float('-inf')], dtype='float32')
out1 = paddle.nan_to_num(x) # [0, 0.3, 3.4028235e+38, -3.4028235e+38]
out2 = paddle.nan_to_num(x, nan=1) # [1, 0.3, 3.4028235e+38, -3.4028235e+38]
out3 = paddle.nan_to_num(x, posinf=5) # [0, 0.3, 5, -3.4028235e+38]
out4 = paddle.nan_to_num(x, nan=10, neginf=-99) # [10, 0.3, 3.4028235e+38, -99]