xarray.decode_cf#
- xarray.decode_cf(obj, concat_characters=True, mask_and_scale=True, decode_times=True, decode_coords=True, drop_variables=None, use_cftime=None, decode_timedelta=None)[source]#
Decode the given Dataset or Datastore according to CF conventions into a new Dataset.
- Parameters:
obj (
DatasetorDataStore) – Object to decode.concat_characters (
bool, optional) – Should character arrays be concatenated to strings, for example: [“h”, “e”, “l”, “l”, “o”] -> “hello”mask_and_scale (
bool, optional) – Lazily scale (using scale_factor and add_offset) and mask (using _FillValue).decode_times (
bool | CFDatetimeCoder | Mapping[str,bool | CFDatetimeCoder], optional) – Decode cf times (e.g., integers since “hours since 2000-01-01”) to np.datetime64.decode_coords (
boolor{"coordinates", "all"}, optional) – Controls which variables are set as coordinate variables:“coordinates” or True: Set variables referred to in the
'coordinates'attribute of the datasets or individual variables as coordinate variables.“all”: Set variables referred to in
'grid_mapping','bounds'and other attributes as coordinate variables.
drop_variables (
stror iterable, optional) – A variable or list of variables to exclude from being parsed from the dataset. This may be useful to drop variables with problems or inconsistent values.use_cftime (
bool, optional) – Only relevant if encoded dates come from a standard calendar (e.g. “gregorian”, “proleptic_gregorian”, “standard”, or not specified). If None (default), attempt to decode times tonp.datetime64[ns]objects; if this is not possible, decode times tocftime.datetimeobjects. If True, always decode times tocftime.datetimeobjects, regardless of whether or not they can be represented usingnp.datetime64[ns]objects. If False, always decode times tonp.datetime64[ns]objects; if this is not possible raise an error.Deprecated since version 2025.01.1: Please pass a
coders.CFDatetimeCoderinstance initialized withuse_cftimeto thedecode_timeskwarg instead.decode_timedelta (
bool | CFTimedeltaCoder | Mapping[str,bool | CFTimedeltaCoder], optional) – If True orCFTimedeltaCoder, decode variables and coordinates with time units in {“days”, “hours”, “minutes”, “seconds”, “milliseconds”, “microseconds”} into timedelta objects. If False, leave them encoded as numbers. If None (default), assume the same behavior as decode_times. The resolution of the decoded timedeltas can be configured with thetime_unitargument in theCFTimedeltaCoderpassed.
- Returns:
decoded (
Dataset)