评价此页

torch.nanquantile#

torch.nanquantile(input, q, dim=None, keepdim=False, *, interpolation='linear', out=None) Tensor#

这是 torch.quantile() 的一个变体,它“忽略”NaN 值,计算分位数 q,就好像 input 中的 NaN 值不存在一样。如果一个缩减行中的所有值都是 NaN,则该缩减的分位数将是 NaN。请参见 torch.quantile() 的文档。

参数
  • input (Tensor) – 输入张量。

  • q (floatTensor) – 一个标量或一维张量,包含 [0, 1] 范围内的分位数

  • dim (int, optional) – 要缩减的维度。如果为 None,则缩减所有维度。

  • keepdim (bool, optional) – 输出张量是否保留 dim。默认为 False

关键字参数
  • interpolation (str) – 当所需分位数位于两个数据点之间时使用的插值方法。可以是 linearlowerhighermidpointnearest。默认为 linear

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

示例

>>> t = torch.tensor([float('nan'), 1, 2])
>>> t.quantile(0.5)
tensor(nan)
>>> t.nanquantile(0.5)
tensor(1.5000)
>>> t = torch.tensor([[float('nan'), float('nan')], [1, 2]])
>>> t
tensor([[nan, nan],
        [1., 2.]])
>>> t.nanquantile(0.5, dim=0)
tensor([1., 2.])
>>> t.nanquantile(0.5, dim=1)
tensor([   nan, 1.5000])