diff --git a/pandas/core/arrays/datetimelike.py b/pandas/core/arrays/datetimelike.py index cb757a412f34d..0add2c2bf7b47 100644 --- a/pandas/core/arrays/datetimelike.py +++ b/pandas/core/arrays/datetimelike.py @@ -2055,7 +2055,7 @@ def _round(self, freq, mode, ambiguous, nonexistent): nanos = delta_to_nanoseconds(offset, self._creso) if nanos == 0: # GH 52761 - return self + return self.copy() result_i8 = round_nsint64(values, mode, nanos) result = self._maybe_mask_results(result_i8, fill_value=iNaT) result = result.view(self._ndarray.dtype) diff --git a/pandas/tests/series/accessors/test_dt_accessor.py b/pandas/tests/series/accessors/test_dt_accessor.py index aed5079a33e5b..330d0f6a89c71 100644 --- a/pandas/tests/series/accessors/test_dt_accessor.py +++ b/pandas/tests/series/accessors/test_dt_accessor.py @@ -396,6 +396,8 @@ def test_dt_round_nonnano_higher_resolution_no_op(self, freq): result = ser.dt.round(freq) tm.assert_series_equal(result, expected) + assert not np.shares_memory(ser.array._ndarray, result.array._ndarray) + def test_dt_namespace_accessor_categorical(self): # GH 19468 dti = DatetimeIndex(["20171111", "20181212"]).repeat(2)