评价此页

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])