MCPcopy
hub / github.com/pydata/xarray / test_rolling_pandas_compat

Method test_rolling_pandas_compat

xarray/tests/test_rolling.py:194–214  ·  view source on GitHub ↗
(
        self, center, window, min_periods, compute_backend
    )

Source from the content-addressed store, hash-verified

192 @pytest.mark.parametrize("min_periods", (None, 1, 2, 3))
193 @pytest.mark.parametrize("window", (1, 2, 3, 4))
194 def test_rolling_pandas_compat(
195 self, center, window, min_periods, compute_backend
196 ) -> None:
197 s = pd.Series(np.arange(10))
198 da = DataArray.from_series(s)
199
200 if min_periods is not None and window < min_periods:
201 min_periods = window
202
203 s_rolling = s.rolling(window, center=center, min_periods=min_periods).mean()
204 da_rolling = da.rolling(
205 index=window, center=center, min_periods=min_periods
206 ).mean()
207 da_rolling_np = da.rolling(
208 index=window, center=center, min_periods=min_periods
209 ).reduce(np.nanmean)
210
211 np.testing.assert_allclose(np.asarray(s_rolling.values), da_rolling.values)
212 np.testing.assert_allclose(s_rolling.index, da_rolling["index"])
213 np.testing.assert_allclose(np.asarray(s_rolling.values), da_rolling_np.values)
214 np.testing.assert_allclose(s_rolling.index, da_rolling_np["index"])
215
216 @pytest.mark.parametrize("center", (True, False))
217 @pytest.mark.parametrize("window", (1, 2, 3, 4))

Callers

nothing calls this directly

Calls 5

arangeMethod · 0.80
from_seriesMethod · 0.80
meanMethod · 0.45
rollingMethod · 0.45
reduceMethod · 0.45

Tested by

no test coverage detected