sparse.pyi 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. from typing import (
  2. Sequence,
  3. TypeVar,
  4. )
  5. import numpy as np
  6. from pandas._typing import npt
  7. _SparseIndexT = TypeVar("_SparseIndexT", bound=SparseIndex)
  8. class SparseIndex:
  9. length: int
  10. npoints: int
  11. def __init__(self) -> None: ...
  12. @property
  13. def ngaps(self) -> int: ...
  14. @property
  15. def nbytes(self) -> int: ...
  16. @property
  17. def indices(self) -> npt.NDArray[np.int32]: ...
  18. def equals(self, other) -> bool: ...
  19. def lookup(self, index: int) -> np.int32: ...
  20. def lookup_array(self, indexer: npt.NDArray[np.int32]) -> npt.NDArray[np.int32]: ...
  21. def to_int_index(self) -> IntIndex: ...
  22. def to_block_index(self) -> BlockIndex: ...
  23. def intersect(self: _SparseIndexT, y_: SparseIndex) -> _SparseIndexT: ...
  24. def make_union(self: _SparseIndexT, y_: SparseIndex) -> _SparseIndexT: ...
  25. class IntIndex(SparseIndex):
  26. indices: npt.NDArray[np.int32]
  27. def __init__(
  28. self, length: int, indices: Sequence[int], check_integrity: bool = ...
  29. ) -> None: ...
  30. class BlockIndex(SparseIndex):
  31. nblocks: int
  32. blocs: np.ndarray
  33. blengths: np.ndarray
  34. def __init__(
  35. self, length: int, blocs: np.ndarray, blengths: np.ndarray
  36. ) -> None: ...
  37. def make_mask_object_ndarray(
  38. arr: npt.NDArray[np.object_], fill_value
  39. ) -> npt.NDArray[np.bool_]: ...
  40. def get_blocks(
  41. indices: npt.NDArray[np.int32],
  42. ) -> tuple[npt.NDArray[np.int32], npt.NDArray[np.int32]]: ...