diff --git a/pandas/core/series.py b/pandas/core/series.py index 6586ac8b01840..897e7c65466ae 100644 --- a/pandas/core/series.py +++ b/pandas/core/series.py @@ -3980,7 +3980,13 @@ def transform( ) -> FrameOrSeriesUnion: return transform(self, func, axis, *args, **kwargs) - def apply(self, func, convert_dtype=True, args=(), **kwds): + def apply( + self, + func: AggFuncType, + convert_dtype: bool = True, + args: Tuple[Any, ...] = (), + **kwds, + ) -> FrameOrSeriesUnion: """ Invoke function on values of Series. diff --git a/pandas/io/sas/sas7bdat.py b/pandas/io/sas/sas7bdat.py index 7c2b801ee0ea8..fe06f103e6c5e 100644 --- a/pandas/io/sas/sas7bdat.py +++ b/pandas/io/sas/sas7bdat.py @@ -52,13 +52,17 @@ def _convert_datetimes(sas_datetimes: pd.Series, unit: str) -> pd.Series: return pd.to_datetime(sas_datetimes, unit=unit, origin="1960-01-01") except OutOfBoundsDatetime: if unit == "s": - return sas_datetimes.apply( + s_series = sas_datetimes.apply( lambda sas_float: datetime(1960, 1, 1) + timedelta(seconds=sas_float) ) + s_series = cast(pd.Series, s_series) + return s_series elif unit == "d": - return sas_datetimes.apply( + d_series = sas_datetimes.apply( lambda sas_float: datetime(1960, 1, 1) + timedelta(days=sas_float) ) + d_series = cast(pd.Series, d_series) + return d_series else: raise ValueError("unit must be 'd' or 's'")