torch.nanmedian
- torch.nanmedian(input) → Tensor
-
返回
input中值的中位数,忽略NaN值。此函数与
torch.median()在input中没有NaN值时完全相同。当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上的索引。此函数与
torch.median()在没有NaN值的行中完全相同。当一个包含一个或多个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]))