Skip to content

Commit 43529c3

Browse files
author
MarcoGorelli
committed
pass unit to validate_frequency
1 parent da2ac1b commit 43529c3

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

pandas/core/arrays/datetimes.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -357,7 +357,7 @@ def _from_sequence_not_strict(
357357

358358
if inferred_freq is None and freq is not None:
359359
# this condition precludes `freq_infer`
360-
cls._validate_frequency(result, freq, ambiguous=ambiguous)
360+
cls._validate_frequency(result, freq, ambiguous=ambiguous, unit=result.unit)
361361

362362
elif freq_infer:
363363
# Set _freq directly to bypass duplicative _validate_frequency

pandas/tests/frame/methods/test_asfreq.py

+12
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,10 @@
1717

1818

1919
class TestAsFreq:
20+
@pytest.fixture(params=["s", "ms", "us", "ns"])
21+
def unit(self, request):
22+
return request.param
23+
2024
def test_asfreq2(self, frame_or_series):
2125
ts = frame_or_series(
2226
[0.0, 1.0, 2.0],
@@ -197,3 +201,11 @@ def test_asfreq_with_unsorted_index(self, frame_or_series):
197201

198202
result = result.asfreq("D")
199203
tm.assert_equal(result, expected)
204+
205+
def test_asfreq_after_normalize(self, unit):
206+
# https://github.com/pandas-dev/pandas/issues/50727
207+
result = DatetimeIndex(
208+
date_range("2000", periods=2).as_unit(unit).normalize(), freq="D"
209+
)
210+
expected = DatetimeIndex(["2000-01-01", "2000-01-02"], freq="D").as_unit(unit)
211+
tm.assert_index_equal(result, expected)

0 commit comments

Comments
 (0)