(
self,
filename_or_obj: T_PathFileOrDataStore,
*,
mask_and_scale=True,
decode_times=True,
concat_characters=True,
decode_coords=True,
drop_variables: str | Iterable[str] | None = None,
set_indexes: bool = True,
use_cftime=None,
decode_timedelta=None,
)
| 25 | return isinstance(filename_or_obj, AbstractDataStore) |
| 26 | |
| 27 | def open_dataset( |
| 28 | self, |
| 29 | filename_or_obj: T_PathFileOrDataStore, |
| 30 | *, |
| 31 | mask_and_scale=True, |
| 32 | decode_times=True, |
| 33 | concat_characters=True, |
| 34 | decode_coords=True, |
| 35 | drop_variables: str | Iterable[str] | None = None, |
| 36 | set_indexes: bool = True, |
| 37 | use_cftime=None, |
| 38 | decode_timedelta=None, |
| 39 | ) -> Dataset: |
| 40 | assert isinstance(filename_or_obj, AbstractDataStore) |
| 41 | |
| 42 | vars, attrs = filename_or_obj.load() |
| 43 | encoding = filename_or_obj.get_encoding() |
| 44 | |
| 45 | vars, attrs, coord_names = conventions.decode_cf_variables( |
| 46 | vars, |
| 47 | attrs, |
| 48 | mask_and_scale=mask_and_scale, |
| 49 | decode_times=decode_times, |
| 50 | concat_characters=concat_characters, |
| 51 | decode_coords=decode_coords, |
| 52 | drop_variables=drop_variables, |
| 53 | use_cftime=use_cftime, |
| 54 | decode_timedelta=decode_timedelta, |
| 55 | ) |
| 56 | |
| 57 | # split data and coordinate variables (promote dimension coordinates) |
| 58 | data_vars = {} |
| 59 | coord_vars = {} |
| 60 | for name, var in vars.items(): |
| 61 | if name in coord_names or var.dims == (name,): |
| 62 | coord_vars[name] = var |
| 63 | else: |
| 64 | data_vars[name] = var |
| 65 | |
| 66 | # explicit Coordinates object with no index passed |
| 67 | coords = Coordinates(coord_vars, indexes={}) |
| 68 | |
| 69 | ds = Dataset(data_vars, coords=coords, attrs=attrs) |
| 70 | ds.set_close(filename_or_obj.close) |
| 71 | ds.encoding = encoding |
| 72 | |
| 73 | return ds |
| 74 | |
| 75 | |
| 76 | BACKEND_ENTRYPOINTS["store"] = (None, StoreBackendEntrypoint) |
no test coverage detected