(
self, center, window, min_periods, compute_backend
)
| 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)) |
nothing calls this directly
no test coverage detected