torch.nanmean¶
- torch.nanmean(input, dim=None, keepdim=False, *, dtype=None, out=None) 张量¶
计算指定维度上所有非NaN元素的平均值。
当
input张量中没有NaN值时,此函数与torch.mean()相同。在存在NaN的情况下,torch.mean()会将NaN传播到输出,而torch.nanmean()将忽略NaN值(torch.nanmean(a)等价于torch.mean(a[~a.isnan()]))。如果
keepdim是True,输出张量的大小与input相同,除了在维度dim上大小为1。 否则,dim被压缩(参见torch.squeeze()),导致输出张量减少1(或len(dim))个维度。- Parameters
- Keyword Arguments
dtype (
torch.dtype, 可选) – 返回张量的所需数据类型。 如果指定,输入张量在操作执行前会被转换为dtype。这对于防止数据类型溢出很有用。默认值:None。输出 (张量, 可选) – 输出张量。
另请参阅
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]) # 如果减少的维度中的所有元素都是NaN,则结果为NaN >>> torch.tensor([torch.nan]).nanmean() tensor(nan)