@@ -321,13 +321,7 @@ def _infer_daily_rule(self) -> Optional[str]:
321
321
return _maybe_add_count (monthly_rule , self .mdiffs [0 ])
322
322
323
323
if self .is_unique :
324
- days = self .deltas [0 ] / _ONE_DAY
325
- if days % 7 == 0 :
326
- # Weekly
327
- day = int_to_weekday [self .rep_stamp .weekday ()]
328
- return _maybe_add_count (f"W-{ day } " , days / 7 )
329
- else :
330
- return _maybe_add_count ("D" , days )
324
+ return self ._get_daily_rule ()
331
325
332
326
if self ._is_business_daily ():
333
327
return "B"
@@ -338,6 +332,16 @@ def _infer_daily_rule(self) -> Optional[str]:
338
332
339
333
return None
340
334
335
+ def _get_daily_rule (self ) -> Optional [str ]:
336
+ days = self .deltas [0 ] / _ONE_DAY
337
+ if days % 7 == 0 :
338
+ # Weekly
339
+ wd = int_to_weekday [self .rep_stamp .weekday ()]
340
+ alias = f"W-{ wd } "
341
+ return _maybe_add_count (alias , days / 7 )
342
+ else :
343
+ return _maybe_add_count ("D" , days )
344
+
341
345
def _get_annual_rule (self ) -> Optional [str ]:
342
346
if len (self .ydiffs ) > 1 :
343
347
return None
@@ -406,14 +410,7 @@ def _get_wom_rule(self) -> Optional[str]:
406
410
class _TimedeltaFrequencyInferer (_FrequencyInferer ):
407
411
def _infer_daily_rule (self ):
408
412
if self .is_unique :
409
- days = self .deltas [0 ] / _ONE_DAY
410
- if days % 7 == 0 :
411
- # Weekly
412
- wd = int_to_weekday [self .rep_stamp .weekday ()]
413
- alias = f"W-{ wd } "
414
- return _maybe_add_count (alias , days / 7 )
415
- else :
416
- return _maybe_add_count ("D" , days )
413
+ return self ._get_daily_rule ()
417
414
418
415
419
416
def _is_multiple (us , mult : int ) -> bool :
0 commit comments