torch.nanmean
-
torch.nanmean(input, dim=None, keepdim=False, *, dtype=None, out=None) → Tensor -
Вычисляет среднее значение всех элементов
non-NaNвдоль указанных измерений. Входные данные должны иметь тип с плавающей запятой или комплексный тип.Эта функция идентична
torch.mean(), если в тензореinputнет значенийNaN. При наличии значений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)) измерение меньше.- Параметры:
-
- input (Tensor) – входной тензор типа с плавающей запятой или комплексного типа
-
dim (int or tuple of ints, optional) – измерение или измерения, по которым выполняется редукция. Если задано
None, редукция выполняется по всем измерениям. -
keepdim (bool, optional) – следует ли сохранять
dimв выходном тензоре. По умолчанию:False.
- Именованные аргументы:
-
-
dtype (
torch.dtype, optional) – требуемый тип данных возвращаемого тензора. Если указан, входной тензор перед выполнением операции преобразуется к типуdtype. Это полезно для предотвращения переполнения данных. По умолчанию: None. - out (Tensor, optional) – выходной тензор.
-
dtype (
См. также
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)
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.nanmean.html