napistu_torch.utils.nd_utils

Utilities for NapistuData objects.

Functions

add_optional_attr(summary_dict, attr_name, value)

Add an attribute to NapistuData summary if it is not None.

compute_mask_hashes([train_mask, val_mask, ...])

Compute deterministic hashes of train/val/test masks.

format_summary(data)

Format NapistuData summary into a clean table for display.

napistu_torch.utils.nd_utils.add_optional_attr(summary_dict: Dict[str, Any], attr_name: str, value: Any) None

Add an attribute to NapistuData summary if it is not None.

napistu_torch.utils.nd_utils.compute_mask_hashes(train_mask: torch.Tensor | None = None, val_mask: torch.Tensor | None = None, test_mask: torch.Tensor | None = None) Dict[str, str | None]

Compute deterministic hashes of train/val/test masks.

Uses SHA256 hash of the mask tensor bytes for reproducible comparison. Returns None for missing masks.

Parameters:
  • train_mask (Optional[torch.Tensor]) – Training mask tensor

  • val_mask (Optional[torch.Tensor]) – Validation mask tensor

  • test_mask (Optional[torch.Tensor]) – Test mask tensor

Returns:

Dictionary with keys ‘train_mask_hash’, ‘val_mask_hash’, ‘test_mask_hash’ Values are SHA256 hex strings or None if mask not provided

Return type:

Dict[str, Optional[str]]

Examples

>>> hashes = compute_mask_hashes(train_mask=data.train_mask)
>>> print(hashes['train_mask_hash'][:16])  # First 16 chars
'a1b2c3d4e5f6g7h8'
napistu_torch.utils.nd_utils.format_summary(data: Dict[str, Any]) DataFrame

Format NapistuData summary into a clean table for display.

Parameters:

data (Dict[str, Any]) – Summary dictionary from NapistuData.get_summary(“detailed”)

Returns:

Formatted summary table

Return type:

pd.DataFrame