Skip to content

Commit df46b2d

Browse files
Basic working example
1 parent f77bad1 commit df46b2d

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

intake_esm/core.py

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,9 @@
55
import warnings
66
from copy import deepcopy
77

8-
import esmvalcore.dataset
9-
108
if typing.TYPE_CHECKING:
119
import esmvalcore
12-
from esmvalcore.dataset import Dataset
10+
import esmvalcore.dataset
1311
from esmvalcore.typing import FacetValue
1412

1513
import dask
@@ -849,18 +847,18 @@ def to_dask(self, **kwargs) -> xr.Dataset:
849847

850848
def to_iris(
851849
self,
852-
facets: dict[FacetValue, str],
850+
facet_map: dict['FacetValue', str],
853851
cmorizer: typing.Any | None = None,
854852
**kwargs,
855-
) -> esmvalcore.dataset.Dataset:
853+
) -> 'esmvalcore.dataset.Dataset':
856854
"""
857855
Convert result to an ESMValCore Dataset.
858856
859857
This is only possible if the search returned exactly one result.
860858
861859
Parameters
862860
----------
863-
facets: dict[FacetValue, str]
861+
facet_map: dict[FacetValue, str]
864862
Mapping of ESMValCore Dataset facets to their corresponding esm_datastore
865863
attributes. For example, the mapping for a dataset containing keys
866864
'activity_id', 'source_id', 'member_id', 'experiment_id' would look like:
@@ -891,8 +889,15 @@ def to_iris(
891889
raise ValueError(
892890
f'Expected exactly one dataset. Received {len(self)} datasets. Please refine your search.'
893891
)
892+
else:
893+
from esmvalcore.dataset import Dataset
894+
895+
ds = Dataset(**facet_map)
894896

895-
ds = Dataset(**facets)
897+
ds.files = self.unique().path
898+
ds.augment_facets()
899+
900+
return ds
896901

897902
def _create_derived_variables(self, datasets, skip_on_error):
898903
if len(self.derivedcat) > 0:

0 commit comments

Comments
 (0)