快捷方式

torch.nanmean

torch.nanmean(input, dim=None, keepdim=False, *, dtype=None, out=None) Tensor

计算指定维度上所有“非 NaN”元素的平均值。输入必须是浮点数或复数。

当输入张量中没有“NaN”值时,此函数与 torch.mean() 相同。在存在“NaN”的情况下,torch.mean() 会将“NaN”传播到输出,而 torch.nanmean() 会忽略“NaN”值(torch.nanmean(a) 等效于 torch.mean(a[~a.isnan()]))。

如果 keepdimTrue,则输出张量与 input 大小相同,除了维度 dim 为大小 1 外。否则,dim 将被压缩(参见 torch.squeeze()),导致输出张量减少 1 个(或 len(dim) 个)维度。

参数
  • input (Tensor) – 输入张量,浮点型或复数型

  • dim (inttuple of ints, 可选) – 要减少的维度。如果为 None,则减少所有维度。

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

关键字参数
  • dtype (torch.dtype,可选) – 返回张量的所需数据类型。如果指定,则在执行操作之前将输入张量转换为 dtype。这对于防止数据类型溢出很有用。默认值:None。

  • out (Tensor, 可选) – 输出张量。

另请参阅

torch.mean() 计算平均值,传播“NaN”。

示例

>>> x = torch.tensor([[torch.nan, 1, 2], [1, 2, 3]])
>>> x.mean()
tensor(nan)
>>> x.nanmean()
tensor(1.8000)
>>> x.mean(dim=0)
tensor([   nan, 1.5000, 2.5000])
>>> x.nanmean(dim=0)
tensor([1.0000, 1.5000, 2.5000])

# If all elements in the reduced dimensions are NaN then the result is NaN
>>> torch.tensor([torch.nan]).nanmean()
tensor(nan)

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

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

查看资源