diff --git a/pandas/core/indexes/datetimelike.py b/pandas/core/indexes/datetimelike.py index 62831f941b535..3e3c6b5c0591a 100644 --- a/pandas/core/indexes/datetimelike.py +++ b/pandas/core/indexes/datetimelike.py @@ -509,7 +509,10 @@ def shift(self, periods: int = 1, freq=None) -> Self: return self.copy() if self.freq is None: - raise NullFrequencyError("Cannot shift with no freq") + if(len(self) > 1): + self.freq = self[1] - self[0] + else: + raise NullFrequencyError("Cannot shift with no freq") start = self[0] + periods * self.freq end = self[-1] + periods * self.freq