Exemplo n.º 1
0
def test_mae_accessor_outer_array(ds_dask):
    ds = ds_dask.load()
    b = ds['b']
    ds = ds.drop('b')
    dim = 'lat'

    actual = mae(ds['a'], b, dim)
    expected = ds.xs.mae('a', b, dim)
    assert_allclose(actual, expected)
Exemplo n.º 2
0
def test_mae_r_xr_dask(a_dask, b_dask, dim):
    actual = mae(a_dask, b_dask, dim)
    dim, axis = _preprocess(dim)
    _a_dask = a_dask.values
    _b_dask = b_dask.values
    axis = tuple(a_dask.dims.index(d) for d in dim)
    res = _mae(_a_dask, _b_dask, axis)
    expected = actual.copy()
    expected.values = res
    assert_allclose(actual, expected)
Exemplo n.º 3
0
def test_mae_r_xr(a, b, dim):
    actual = mae(a, b, dim)
    dim, axis = _preprocess(dim)
    _a = a.values
    _b = b.values
    axis = tuple(a.dims.index(d) for d in dim)
    res = _mae(_a, _b, axis)
    expected = actual.copy()
    expected.values = res
    assert_allclose(actual, expected)
Exemplo n.º 4
0
def test_mae_r_xr(a, b, dim, weight, weights_ones, weights_latitude):
    # Generates subsetted weights to pass in as arg to main function and for the numpy testing.
    weights_arg, weights_np = adjust_weights(weight, dim, weights_ones,
                                             weights_latitude)

    actual = mae(a, b, dim, weights=weights_arg)
    assert actual.chunks is None

    dim, axis = _preprocess_dims(dim)
    _a = a
    _b = b
    _weights_np = _preprocess_weights(_a, dim, dim, weights_np)
    axis = tuple(a.dims.index(d) for d in dim)
    res = _mae(_a.values, _b.values, _weights_np.values, axis)
    expected = actual.copy()
    expected.values = res
    assert_allclose(actual, expected)
Exemplo n.º 5
0
def test_mae_same_as_sklearn(a, b):
    """Tests that mean absolute error is same as computed from sklearn."""
    xs_mae = mae(a, b, 'time')
    sklearn_mae = mean_absolute_error(a, b)
    assert np.allclose(xs_mae, sklearn_mae)