index.pyi 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. import numpy as np
  2. from pandas._typing import npt
  3. from pandas import (
  4. Index,
  5. MultiIndex,
  6. )
  7. from pandas.core.arrays import ExtensionArray
  8. multiindex_nulls_shift: int
  9. class IndexEngine:
  10. over_size_threshold: bool
  11. def __init__(self, values: np.ndarray) -> None: ...
  12. def __contains__(self, val: object) -> bool: ...
  13. # -> int | slice | np.ndarray[bool]
  14. def get_loc(self, val: object) -> int | slice | np.ndarray: ...
  15. def sizeof(self, deep: bool = ...) -> int: ...
  16. def __sizeof__(self) -> int: ...
  17. @property
  18. def is_unique(self) -> bool: ...
  19. @property
  20. def is_monotonic_increasing(self) -> bool: ...
  21. @property
  22. def is_monotonic_decreasing(self) -> bool: ...
  23. @property
  24. def is_mapping_populated(self) -> bool: ...
  25. def clear_mapping(self): ...
  26. def get_indexer(self, values: np.ndarray) -> npt.NDArray[np.intp]: ...
  27. def get_indexer_non_unique(
  28. self,
  29. targets: np.ndarray,
  30. ) -> tuple[npt.NDArray[np.intp], npt.NDArray[np.intp]]: ...
  31. class MaskedIndexEngine(IndexEngine):
  32. def __init__(self, values: object) -> None: ...
  33. def get_indexer_non_unique(
  34. self, targets: object
  35. ) -> tuple[npt.NDArray[np.intp], npt.NDArray[np.intp]]: ...
  36. class Float64Engine(IndexEngine): ...
  37. class Float32Engine(IndexEngine): ...
  38. class Complex128Engine(IndexEngine): ...
  39. class Complex64Engine(IndexEngine): ...
  40. class Int64Engine(IndexEngine): ...
  41. class Int32Engine(IndexEngine): ...
  42. class Int16Engine(IndexEngine): ...
  43. class Int8Engine(IndexEngine): ...
  44. class UInt64Engine(IndexEngine): ...
  45. class UInt32Engine(IndexEngine): ...
  46. class UInt16Engine(IndexEngine): ...
  47. class UInt8Engine(IndexEngine): ...
  48. class ObjectEngine(IndexEngine): ...
  49. class StringEngine(IndexEngine): ...
  50. class DatetimeEngine(Int64Engine): ...
  51. class TimedeltaEngine(DatetimeEngine): ...
  52. class PeriodEngine(Int64Engine): ...
  53. class BoolEngine(UInt8Engine): ...
  54. class MaskedFloat64Engine(MaskedIndexEngine): ...
  55. class MaskedFloat32Engine(MaskedIndexEngine): ...
  56. class MaskedComplex128Engine(MaskedIndexEngine): ...
  57. class MaskedComplex64Engine(MaskedIndexEngine): ...
  58. class MaskedInt64Engine(MaskedIndexEngine): ...
  59. class MaskedInt32Engine(MaskedIndexEngine): ...
  60. class MaskedInt16Engine(MaskedIndexEngine): ...
  61. class MaskedInt8Engine(MaskedIndexEngine): ...
  62. class MaskedUInt64Engine(MaskedIndexEngine): ...
  63. class MaskedUInt32Engine(MaskedIndexEngine): ...
  64. class MaskedUInt16Engine(MaskedIndexEngine): ...
  65. class MaskedUInt8Engine(MaskedIndexEngine): ...
  66. class MaskedBoolEngine(MaskedUInt8Engine): ...
  67. class StringObjectEngine(ObjectEngine):
  68. def __init__(self, values: object, na_value) -> None: ...
  69. class BaseMultiIndexCodesEngine:
  70. levels: list[np.ndarray]
  71. offsets: np.ndarray # np.ndarray[..., ndim=1]
  72. def __init__(
  73. self,
  74. levels: list[Index], # all entries hashable
  75. labels: list[np.ndarray], # all entries integer-dtyped
  76. offsets: np.ndarray, # np.ndarray[..., ndim=1]
  77. ) -> None: ...
  78. def get_indexer(self, target: npt.NDArray[np.object_]) -> npt.NDArray[np.intp]: ...
  79. def _extract_level_codes(self, target: MultiIndex) -> np.ndarray: ...
  80. class ExtensionEngine:
  81. def __init__(self, values: ExtensionArray) -> None: ...
  82. def __contains__(self, val: object) -> bool: ...
  83. def get_loc(self, val: object) -> int | slice | np.ndarray: ...
  84. def get_indexer(self, values: np.ndarray) -> npt.NDArray[np.intp]: ...
  85. def get_indexer_non_unique(
  86. self,
  87. targets: np.ndarray,
  88. ) -> tuple[npt.NDArray[np.intp], npt.NDArray[np.intp]]: ...
  89. @property
  90. def is_unique(self) -> bool: ...
  91. @property
  92. def is_monotonic_increasing(self) -> bool: ...
  93. @property
  94. def is_monotonic_decreasing(self) -> bool: ...
  95. def sizeof(self, deep: bool = ...) -> int: ...
  96. def clear_mapping(self): ...