torch.nanmedian¶
- torch.nanmedian(input) 张量 ¶
返回 `input` 中忽略 `NaN` 值的数值的中位数。
当 `input` 中没有 `NaN` 值时,此函数与
torch.median()
相同。当 `input` 中有一个或多个 `NaN` 值时,torch.median()
总是返回 `NaN`,而此函数将返回 `input` 中非 `NaN` 元素的中位数。如果 `input` 中的所有元素都是 `NaN`,它也将返回 `NaN`。- 参数
input (张量) – 输入张量。
示例
>>> 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`。示例
>>> 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]))