From e75085685c94a2bad5d937353514eb4c3422a7b5 Mon Sep 17 00:00:00 2001 From: saldanhad Date: Sat, 28 Sep 2024 20:21:17 +0530 Subject: [PATCH 1/2] update docstrings --- ci/code_checks.sh | 1 - pandas/core/arrays/timedeltas.py | 23 ++++++++++++++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/ci/code_checks.sh b/ci/code_checks.sh index f662b4781e84b..8fba9af758706 100755 --- a/ci/code_checks.sh +++ b/ci/code_checks.sh @@ -101,7 +101,6 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then -i "pandas.Timedelta.max PR02" \ -i "pandas.Timedelta.min PR02" \ -i "pandas.Timedelta.resolution PR02" \ - -i "pandas.TimedeltaIndex.to_pytimedelta RT03,SA01" \ -i "pandas.Timestamp.max PR02" \ -i "pandas.Timestamp.min PR02" \ -i "pandas.Timestamp.nanosecond GL08" \ diff --git a/pandas/core/arrays/timedeltas.py b/pandas/core/arrays/timedeltas.py index 754ae277e359a..e5e9d1f7320e7 100644 --- a/pandas/core/arrays/timedeltas.py +++ b/pandas/core/arrays/timedeltas.py @@ -789,7 +789,20 @@ def to_pytimedelta(self) -> npt.NDArray[np.object_]: Returns ------- - numpy.ndarray + **numpy.ndarray** + A NumPy ``timedelta64`` object representing the same duration as the + original pandas ``Timedelta`` object. The precision of the resulting + object is in nanoseconds, which is the default + time resolution used by pandas for ``Timedelta`` objects, ensuring + high precision for time-based calculations. + + See Also + -------- + to_timedelta : Convert argument to timedelta format. + Timedelta : Represents a duration between two dates or times. + DatetimeIndex: Index of datetime64 data. + Timedelta.components : Return a components namedtuple-like + of a single timedelta. Examples -------- @@ -800,6 +813,14 @@ def to_pytimedelta(self) -> npt.NDArray[np.object_]: >>> tdelta_idx.to_pytimedelta() array([datetime.timedelta(days=1), datetime.timedelta(days=2), datetime.timedelta(days=3)], dtype=object) + + >>> tidx = pd.TimedeltaIndex(data=["1 days 02:30:45", "3 days 04:15:10"]) + >>> tidx + TimedeltaIndex(['1 days 02:30:45', '3 days 04:15:10'], + dtype='timedelta64[ns]', freq=None) + >>> tidx.to_pytimedelta() + array([datetime.timedelta(days=1, seconds=9045), + datetime.timedelta(days=3, seconds=15310)], dtype=object) """ return ints_to_pytimedelta(self._ndarray) From 97a7c3f1a14e1d1afab873ffb93bdd1f9c235d45 Mon Sep 17 00:00:00 2001 From: Deepak Saldanha Date: Sun, 29 Sep 2024 23:07:48 +0530 Subject: [PATCH 2/2] Update pandas/core/arrays/timedeltas.py Co-authored-by: Matthew Roeschke <10647082+mroeschke@users.noreply.github.com> --- pandas/core/arrays/timedeltas.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pandas/core/arrays/timedeltas.py b/pandas/core/arrays/timedeltas.py index e5e9d1f7320e7..a8a0037d0bbb9 100644 --- a/pandas/core/arrays/timedeltas.py +++ b/pandas/core/arrays/timedeltas.py @@ -789,7 +789,7 @@ def to_pytimedelta(self) -> npt.NDArray[np.object_]: Returns ------- - **numpy.ndarray** + numpy.ndarray A NumPy ``timedelta64`` object representing the same duration as the original pandas ``Timedelta`` object. The precision of the resulting object is in nanoseconds, which is the default