快捷方式

torch.nanmean

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

計算指定維度上所有非 NaN 元素的均值。輸入必須是浮點或複數型別。

input 張量中沒有 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 (intint 的 tuple,可選) – 要歸約的維度或維度。如果為 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 的全面開發者文件

檢視文件

教程

獲取適合初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源