快捷方式

torch.nanmedian

torch.nanmedian(input) Tensor

返回 input 中值的中间值,忽略 NaN 值。

input 中没有 NaN 值时,此函数与 torch.median() 完全相同。当 input 有一个或多个 NaN 值时,torch.median() 将始终返回 NaN,而此函数将返回 input 中非 NaN 元素的中间值。如果 input 中的所有元素都是 NaN,它也将返回 NaN

参数

input (Tensor) – 输入张量。

示例

>>> a = torch.tensor([1, float('nan'), 3, 2])
>>> a.median()
tensor(nan)
>>> a.nanmedian()
tensor(2.)
torch.nanmedian(input, dim=-1, keepdim=False, *, out=None)

返回一个命名元组 (values, indices),其中 values 包含 input 维度 dim 中每行的中间值,忽略 NaN 值,而 indices 包含维度 dim 中找到的中间值的索引。

当缩减行中没有 NaN 值时,此函数与 torch.median() 完全相同。当缩减行中有一个或多个 NaN 值时,torch.median() 将始终将其缩减为 NaN,而此函数会将其缩减为非 NaN 元素的中间值。如果缩减行中的所有元素都是 NaN,那么它也会被缩减为 NaN

参数
  • input (Tensor) – 输入张量。

  • dim (int) – 要缩减的维度。

  • keepdim (bool) – 输出张量是否保留 dim

关键字参数

out ((Tensor, Tensor), 可选) – 第一个张量将填充中间值,第二个张量(必须具有 long dtype)将填充其在 input 的维度 dim 中的索引。

示例

>>> a = torch.tensor([[2, 3, 1], [float('nan'), 1, float('nan')]])
>>> a
tensor([[2., 3., 1.],
        [nan, 1., nan]])
>>> a.median(0)
torch.return_types.median(values=tensor([nan, 1., nan]), indices=tensor([1, 1, 1]))
>>> a.nanmedian(0)
torch.return_types.nanmedian(values=tensor([2., 1., 1.]), indices=tensor([0, 1, 0]))

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深度教程

查看教程

资源

查找开发资源并获得您的问题解答

查看资源