NullableTensor#

class sdm.tensor.NullableTensor(data: Tensor, valid: Tensor)#

Bases: Tensor

A torch.Tensor for nullable values.

Parameters:
  • data (Tensor) – Tensor containing the values.

  • valid (Tensor) – Boolean mask indicating valid, non-null values.

Return type:

Self

classmethod from_tensor(tensor: Tensor) → Self#

Wrap a tensor into a nullable tensor.

Parameters:

tensor (Tensor) – The tensor to wrap.

Return type:

Self

classmethod from_arrow(array: Array | ChunkedArray, *, dtype: dtype | None = None, size: Sequence[int] | None = None, device: device | str | None = None) → Self#

Create tensor from a pyarrow.Array.

Parameters:
Return type:

Self

to_arrow() → Array#

Convert this tensor to a flat pyarrow.Array.

Return type:

Array

classmethod from_cudf(ser: cudf.Series | cudf.Index, *, dtype: torch.dtype | None = None, size: Sequence[int] | None = None, device: torch.device | str | None = None) → Self#

Create tensor from a cudf.Series.

Parameters:
Return type:

Self

to_cudf() → cudf.Series#

Convert this CUDA tensor to a flat cudf.Series.

Return type:

cudf.Series

classmethod from_list(values: int | bool | Sequence[Any] | None, *, dtype: dtype | None = None, device: device | str | None = None) → Self#

Create tensor from a rectangular Python list.

Parameters:
Return type:

Self

property data: Tensor#

Return the physical data.

Values at positions where valid is False are unspecified.

property valid: Tensor#

Return the logical validity mask.