|
from datetime import timedelta |
|
from typing import ( |
|
ClassVar, |
|
Literal, |
|
TypeAlias, |
|
TypeVar, |
|
overload, |
|
) |
|
|
|
import numpy as np |
|
|
|
from pandas._libs.tslibs import ( |
|
NaTType, |
|
Tick, |
|
) |
|
from pandas._typing import ( |
|
Frequency, |
|
Self, |
|
npt, |
|
) |
|
|
|
|
|
|
|
UnitChoices: TypeAlias = Literal[ |
|
"Y", |
|
"y", |
|
"M", |
|
"W", |
|
"w", |
|
"D", |
|
"d", |
|
"days", |
|
"day", |
|
"hours", |
|
"hour", |
|
"hr", |
|
"h", |
|
"m", |
|
"minute", |
|
"min", |
|
"minutes", |
|
"T", |
|
"t", |
|
"s", |
|
"seconds", |
|
"sec", |
|
"second", |
|
"ms", |
|
"milliseconds", |
|
"millisecond", |
|
"milli", |
|
"millis", |
|
"L", |
|
"l", |
|
"us", |
|
"microseconds", |
|
"microsecond", |
|
"µs", |
|
"micro", |
|
"micros", |
|
"u", |
|
"ns", |
|
"nanoseconds", |
|
"nano", |
|
"nanos", |
|
"nanosecond", |
|
"n", |
|
] |
|
_S = TypeVar("_S", bound=timedelta) |
|
|
|
def get_unit_for_round(freq, creso: int) -> int: ... |
|
def disallow_ambiguous_unit(unit: str | None) -> None: ... |
|
def ints_to_pytimedelta( |
|
m8values: npt.NDArray[np.timedelta64], |
|
box: bool = ..., |
|
) -> npt.NDArray[np.object_]: ... |
|
def array_to_timedelta64( |
|
values: npt.NDArray[np.object_], |
|
unit: str | None = ..., |
|
errors: str = ..., |
|
) -> np.ndarray: ... |
|
def parse_timedelta_unit(unit: str | None) -> UnitChoices: ... |
|
def delta_to_nanoseconds( |
|
delta: np.timedelta64 | timedelta | Tick, |
|
reso: int = ..., |
|
round_ok: bool = ..., |
|
) -> int: ... |
|
def floordiv_object_array( |
|
left: np.ndarray, right: npt.NDArray[np.object_] |
|
) -> np.ndarray: ... |
|
def truediv_object_array( |
|
left: np.ndarray, right: npt.NDArray[np.object_] |
|
) -> np.ndarray: ... |
|
|
|
class Timedelta(timedelta): |
|
_creso: int |
|
min: ClassVar[Timedelta] |
|
max: ClassVar[Timedelta] |
|
resolution: ClassVar[Timedelta] |
|
value: int |
|
_value: int |
|
|
|
def __new__( |
|
cls: type[_S], |
|
value=..., |
|
unit: str | None = ..., |
|
**kwargs: float | np.integer | np.floating, |
|
) -> _S | NaTType: ... |
|
@classmethod |
|
def _from_value_and_reso(cls, value: np.int64, reso: int) -> Timedelta: ... |
|
@property |
|
def days(self) -> int: ... |
|
@property |
|
def seconds(self) -> int: ... |
|
@property |
|
def microseconds(self) -> int: ... |
|
def total_seconds(self) -> float: ... |
|
def to_pytimedelta(self) -> timedelta: ... |
|
def to_timedelta64(self) -> np.timedelta64: ... |
|
@property |
|
def asm8(self) -> np.timedelta64: ... |
|
|
|
def round(self, freq: Frequency) -> Self: ... |
|
def floor(self, freq: Frequency) -> Self: ... |
|
def ceil(self, freq: Frequency) -> Self: ... |
|
@property |
|
def resolution_string(self) -> str: ... |
|
def __add__(self, other: timedelta) -> Timedelta: ... |
|
def __radd__(self, other: timedelta) -> Timedelta: ... |
|
def __sub__(self, other: timedelta) -> Timedelta: ... |
|
def __rsub__(self, other: timedelta) -> Timedelta: ... |
|
def __neg__(self) -> Timedelta: ... |
|
def __pos__(self) -> Timedelta: ... |
|
def __abs__(self) -> Timedelta: ... |
|
def __mul__(self, other: float) -> Timedelta: ... |
|
def __rmul__(self, other: float) -> Timedelta: ... |
|
|
|
@overload |
|
def __floordiv__(self, other: timedelta) -> int: ... |
|
@overload |
|
def __floordiv__(self, other: float) -> Timedelta: ... |
|
@overload |
|
def __floordiv__( |
|
self, other: npt.NDArray[np.timedelta64] |
|
) -> npt.NDArray[np.intp]: ... |
|
@overload |
|
def __floordiv__( |
|
self, other: npt.NDArray[np.number] |
|
) -> npt.NDArray[np.timedelta64] | Timedelta: ... |
|
@overload |
|
def __rfloordiv__(self, other: timedelta | str) -> int: ... |
|
@overload |
|
def __rfloordiv__(self, other: None | NaTType) -> NaTType: ... |
|
@overload |
|
def __rfloordiv__(self, other: np.ndarray) -> npt.NDArray[np.timedelta64]: ... |
|
@overload |
|
def __truediv__(self, other: timedelta) -> float: ... |
|
@overload |
|
def __truediv__(self, other: float) -> Timedelta: ... |
|
def __mod__(self, other: timedelta) -> Timedelta: ... |
|
def __divmod__(self, other: timedelta) -> tuple[int, Timedelta]: ... |
|
def __le__(self, other: timedelta) -> bool: ... |
|
def __lt__(self, other: timedelta) -> bool: ... |
|
def __ge__(self, other: timedelta) -> bool: ... |
|
def __gt__(self, other: timedelta) -> bool: ... |
|
def __hash__(self) -> int: ... |
|
def isoformat(self) -> str: ... |
|
def to_numpy( |
|
self, dtype: npt.DTypeLike = ..., copy: bool = False |
|
) -> np.timedelta64: ... |
|
def view(self, dtype: npt.DTypeLike) -> object: ... |
|
@property |
|
def unit(self) -> str: ... |
|
def as_unit(self, unit: str, round_ok: bool = ...) -> Timedelta: ... |
|
|