From 3f418262b38dd369e1788386cb5406ad131cde21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mika=20Pfl=C3=BCger?= Date: Wed, 24 Feb 2021 11:39:48 +0100 Subject: [PATCH 1/2] Allow for more than one source in a dataset, test for it. --- docs/api.rst | 1 - docs/data_format_details.rst | 1 - docs/data_format_examples.ipynb | 2 +- primap2/_data_format.py | 4 ---- primap2/_metadata.py | 9 -------- ...est_sum_skip_allna_inhomogeneous_result.nc | Bin 57672 -> 90600 bytes primap2/tests/examples.py | 2 +- primap2/tests/test_data_format.py | 21 ++---------------- primap2/tests/test_metadata.py | 3 --- 9 files changed, 4 insertions(+), 39 deletions(-) diff --git a/docs/api.rst b/docs/api.rst index 38e8e4c5..9fb2d129 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -67,7 +67,6 @@ Attributes Dataset.pr.comment Dataset.pr.institution Dataset.pr.history - Dataset.pr.source .. _dsmeth: diff --git a/docs/data_format_details.rst b/docs/data_format_details.rst index 433c8ac5..e20922d8 100644 --- a/docs/data_format_details.rst +++ b/docs/data_format_details.rst @@ -50,7 +50,6 @@ category-set (for example, ``animal (FAOSTAT)``). Additional rules: -* The size of the ``source`` dimension must be exactly 1. * The valid values for the ``provenance`` are ``measured``, ``projected``, and ``derived``. diff --git a/docs/data_format_examples.ipynb b/docs/data_format_examples.ipynb index 0a3a52e2..42876f8b 100644 --- a/docs/data_format_examples.ipynb +++ b/docs/data_format_examples.ipynb @@ -201,7 +201,7 @@ " \"scenario (FAOSTAT)\": np.array([\"highpop\", \"lowpop\"]),\n", " \"provenance\": np.array([\"projected\"]),\n", " \"model\": np.array([\"FANCYFAO\"]),\n", - " \"source\": np.array([\"RAND2020\"]),\n", + " \"source\": np.array([\"RAND2020\", \"RAND2021\"]),\n", "}\n", "\n", "opulent = xr.Dataset(\n", diff --git a/primap2/_data_format.py b/primap2/_data_format.py index 09704fd2..8d859fba 100644 --- a/primap2/_data_format.py +++ b/primap2/_data_format.py @@ -385,10 +385,6 @@ def ensure_valid_dimensions(ds: xr.Dataset): f" sec_cats." ) - if ds.dims["source"] != 1: - logger.error("Exactly one source required per data set.") - raise ValueError("Exactly one source required") - for dim in required_indirect_dims.union(optional_indirect_dims): if dim in ds.attrs: split_dim_name(ds.attrs[dim]) diff --git a/primap2/_metadata.py b/primap2/_metadata.py index 5664a189..964f0d74 100644 --- a/primap2/_metadata.py +++ b/primap2/_metadata.py @@ -72,12 +72,3 @@ def history(self) -> str: @history.setter def history(self, value: str): self._ds.attrs["history"] = value - - @property - def source(self) -> str: - """a short identifier for the source of the data""" - return self._ds["source"].item() - - @source.setter - def source(self, value: str): - self._ds["source"] = [value] diff --git a/primap2/tests/data/test_sum_skip_allna_inhomogeneous_result.nc b/primap2/tests/data/test_sum_skip_allna_inhomogeneous_result.nc index 4e20b4279cd9e59d129872bf731604f460f0c4dd..8d079ad0804012b65298931c5a41f313fc2534b3 100644 GIT binary patch literal 90600 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%0AnKNc4X$z;cFWG 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%0D%!&A8upOPo!s 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 HPd@)YMBfP& diff --git a/primap2/tests/examples.py b/primap2/tests/examples.py index 4a802467..8b5af8a4 100644 --- a/primap2/tests/examples.py +++ b/primap2/tests/examples.py @@ -48,7 +48,7 @@ def opulent_ds(): "scenario (FAOSTAT)": np.array(["highpop", "lowpop"]), "provenance": np.array(["projected"]), "model": np.array(["FANCYFAO"]), - "source": np.array(["RAND2020"]), + "source": np.array(["RAND2020", "RAND2021"]), } # seed the rng with a constant to achieve predictable "randomness" diff --git a/primap2/tests/test_data_format.py b/primap2/tests/test_data_format.py index 61a96b5e..e32bd25c 100644 --- a/primap2/tests/test_data_format.py +++ b/primap2/tests/test_data_format.py @@ -20,10 +20,9 @@ def test_something_else_entirely(caplog): assert "object is not an xarray Dataset." in caplog.text -def test_valid_ds_pass(minimal_ds, opulent_ds, caplog): +def test_valid_ds_pass(any_ds, caplog): caplog.set_level(logging.INFO) - minimal_ds.pr.ensure_valid() - opulent_ds.pr.ensure_valid() + any_ds.pr.ensure_valid() assert not caplog.records @@ -109,22 +108,6 @@ def test_wrong_dimension_key(minimal_ds, caplog): assert "'asdf' not in the format 'dim (category_set)'." in caplog.text -def test_not_one_source(minimal_ds: xr.Dataset, caplog): - ds = minimal_ds.loc[{"source": "RAND2020"}] - ds["source"] = [] - with pytest.raises(ValueError, match=r"Exactly one source required"): - ds.pr.ensure_valid() - assert "ERROR" in caplog.text - assert "Exactly one source required per data set." in caplog.text - - caplog.clear() - ds["source"] = ["a", "b"] - with pytest.raises(ValueError, match=r"Exactly one source required"): - ds.pr.ensure_valid() - assert "ERROR" in caplog.text - assert "Exactly one source required per data set." in caplog.text - - def test_missing_sec_cat(minimal_ds, caplog): minimal_ds.attrs["sec_cats"] = ["missing"] with pytest.raises(ValueError, match="Secondary category 'missing' not in dims"): diff --git a/primap2/tests/test_metadata.py b/primap2/tests/test_metadata.py index 8c344c88..f05bd138 100644 --- a/primap2/tests/test_metadata.py +++ b/primap2/tests/test_metadata.py @@ -12,7 +12,6 @@ def test_metadata_properties(opulent_ds): assert ds.pr.history == ( "2021-01-14 14:50 data invented\n" "2021-01-14 14:51 additional processing step" ) - assert ds.pr.source == "RAND2020" ds.pr.references = "references" assert ds.pr.references == "references" @@ -28,5 +27,3 @@ def test_metadata_properties(opulent_ds): assert ds.pr.institution == "institution" ds.pr.history = "history" assert ds.pr.history == "history" - ds.pr.source = "source" - assert ds.pr.source == "source" From 9d34280f73f9811cae1350bc38b0fc3c3adbdd3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mika=20Pfl=C3=BCger?= Date: Wed, 24 Feb 2021 11:42:07 +0100 Subject: [PATCH 2/2] Update changelog. --- CHANGELOG.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 0f083739..63916c72 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -6,6 +6,7 @@ unreleased ---------- * Add the ``da.pr.set()`` and ``ds.pr.set()`` functions for overwriting / infilling / extending data. +* Allow for more than one source in a single Dataset / DataArray. 0.3.1 -----