Función torch.nanquantile de PyTorch
Manual de referencia de Pytorch torch
torch.nanquantileEs una función en PyTorch que devuelve los cuantiles de los valores que no son NaN de un tensor. A diferencia de quantile, ignora todos los valores NaN.
Definición de la función
torch.nanquantile(input, q, dim, keepdim=False)
Ejemplo de uso
Ejemplo
import torch
x = torch.tensor([1.0, float('nan'), 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0])
# Devuelve el cuantil 0.5 de los valores no NaN
print("Cuantil 0.5 no NaN:", torch.nanquantile(x, 0.5))
# Devuelve múltiples cuantiles no NaN
print("Cuantiles no NaN 0.25, 0.75:", torch.nanquantile(x, torch.tensor([0.25, 0.75])))
# Cuantil no NaN a lo largo de dim=0
y = torch.tensor([[1.0, float('nan'), 3.0], [4.0, 5.0, 6.0]])
print("Cuantil no NaN 0.5 para dim=0:", torch.nanquantile(y, 0.5, dim=0))
x = torch.tensor([1.0, float('nan'), 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0])
# Devuelve el cuantil 0.5 de los valores no NaN
print("Cuantil 0.5 no NaN:", torch.nanquantile(x, 0.5))
# Devuelve múltiples cuantiles no NaN
print("Cuantiles no NaN 0.25, 0.75:", torch.nanquantile(x, torch.tensor([0.25, 0.75])))
# Cuantil no NaN a lo largo de dim=0
y = torch.tensor([[1.0, float('nan'), 3.0], [4.0, 5.0, 6.0]])
print("Cuantil no NaN 0.5 para dim=0:", torch.nanquantile(y, 0.5, dim=0))
El resultado de salida es:
非NaN 0.5 分位数: tensor(5.5000) 非NaN 0.25, 0.75 分位数: tensor([2.7500, 7.7500]) dim=0 非NaN 0.5 分位数: tensor([2.5000, 5.0000, 4.5000])
Otras extensiones