def test_fit_RegressorMixin(self): lin_reg = LinearRegression() wrapper = SKLearnWrapper(module=lin_reg) self.assertFalse("coef_" in lin_reg.__dir__()) wrapper.fit(test=xr.DataArray([1, 2, 3, 4, 5]), target=xr.DataArray([2, 2, 2, 2, 2])) self.assertTrue("coef_" in lin_reg.__dir__()) self.assertIsNotNone(lin_reg.coef_)
def test_fit_regression_multiple_datavariables(self): time = pd.date_range('2000-01-01', freq='24H', periods=7) time2 = pd.date_range('2000-01-08', freq='24H', periods=1) bar = xr.DataArray([2, 2, 2, 2, 3, 3, 3], dims=["time"], coords={'time': time}) foo = xr.DataArray([4, 4, 4, 4, 6, 6, 6], dims=["time"], coords={'time': time}) target = xr.DataArray([6, 6, 6, 6, 9, 9, 9], dims=["time"], coords={'time': time}) lin_reg = LinearRegression() wrapper = SKLearnWrapper(module=lin_reg) self.assertFalse("coef_" in lin_reg.__dir__()) wrapper.fit(bar=bar, foo=foo, target=target) result = wrapper.transform(bar=xr.DataArray([2], dims=["time"], coords={'time': time2}), foo=xr.DataArray([4], dims=["time"], coords={'time': time2})) self.assertAlmostEqual(result["target"].values[0, 0], 6.0) self.assertEqual(result["target"].shape, (1, 1))