cf.Field.del_domain_axis¶
-
Field.del_domain_axis(identity=None, squeeze=False, default=ValueError())[source]¶ Remove a domain axis construct.
In general, a domain axis construct can only be removed if it is not spanned by any construct’s data. However, a size 1 domain axis construct can be removed in any case if the squeeze parameter is set to
True. In this case, a metadata construct whose data spans only the removed domain axis construct will also be removed.New in version 3.6.0.
See also
- Parameters
- identity:
Select the domain axis construct by one of:
An identity or key of a 1-d coordinate construct that whose data spans the domain axis construct.
A domain axis construct identity or key.
The position of the domain axis construct in the field construct’s data.
A construct identity is specified by a string (e.g.
'latitude','long_name=time','ncvar%lat', etc.); or a compiled regular expression (e.g.re.compile('^atmosphere')) that selects the relevant constructs whose identities match viare.search.Each construct has a number of identities, and is selected if any of them match any of those provided. A construct’s identities are those returned by its
identitiesmethod. In the following example, the constructxhas six identities:>>> x.identities() ['time' 'long_name=Time', 'foo=bar', 'standard_name=time' 'ncvar%t', 'T']
A construct key may optionally have the
'key%'prefix. For example'dimensioncoordinate2'and'key%dimensioncoordinate2'are both acceptable keys.A position of a domain axis construct in the field construct’s data is specified by an integer index.
Note that in the output of a
printcall ordumpmethod, a construct is always described by one of its identities, and so this description may always be used as an identity argument.- Parameter example:
identity='long_name=Latitude'- Parameter example:
identity='dimensioncoordinate1'- Parameter example:
identity='domainaxis2'- Parameter example:
identity='key%domainaxis2'- Parameter example:
identity='ncdim%y'- Parameter example:
identity=2
- squeeze:
bool, optional If True then allow the removal of a size 1 domain axis construct that is spanned by any data array and squeeze the corresponding dimension from those arrays.
- default: optional
Return the value of the default parameter if the construct can not be removed, or does not exist. If set to an
Exceptioninstance then it will be raised instead.
- Returns
DomainAxisThe removed domain axis construct.
Examples:
>>> f = cf.example_field(0) >>> g = f[0] Field: specific_humidity (ncvar%q) ---------------------------------- Data : specific_humidity(latitude(1), longitude(8)) 1 Cell methods : area: mean Dimension coords: latitude(1) = [-75.0] degrees_north : longitude(8) = [22.5, ..., 337.5] degrees_east : time(1) = [2019-01-01 00:00:00] >>> g.del_domain_axis('Y', squeeze=True) <CF DomainAxis: size(1)> >>> print(g) Field: specific_humidity (ncvar%q) ---------------------------------- Data : specific_humidity(longitude(8)) 1 Cell methods : area: mean Dimension coords: longitude(8) = [22.5, ..., 337.5] degrees_east : time(1) = [2019-01-01 00:00:00] >>> g.del_domain_axis('T', squeeze=True) <CF DomainAxis: size(1)> >>> print(g) Field: specific_humidity (ncvar%q) ---------------------------------- Data : specific_humidity(longitude(8)) 1 Cell methods : area: mean Dimension coords: longitude(8) = [22.5, ..., 337.5] degrees_east