cf.DimensionCoordinate


class cf.DimensionCoordinate(properties=None, data=None, bounds=None, geometry=None, interior_ring=None, source=None, copy=True, _use_data=True)[source]

Bases: cf.mixin.coordinate.Coordinate, cf.mixin.propertiesdatabounds.PropertiesDataBounds, cfdm.dimensioncoordinate.DimensionCoordinate

A dimension coordinate construct of the CF data model.

A dimension coordinate construct provides information which locate the cells of the domain and which depend on a subset of the domain axis constructs. The dimension coordinate construct is able to unambiguously describe cell locations because a domain axis can be associated with at most one dimension coordinate construct, whose data array values must all be non-missing and strictly monotonically increasing or decreasing. They must also all be of the same numeric data type. If cell bounds are provided, then each cell must have exactly two vertices. CF-netCDF coordinate variables and numeric scalar coordinate variables correspond to dimension coordinate constructs.

The dimension coordinate construct consists of a data array of the coordinate values which spans a subset of the domain axis constructs, an optional array of cell bounds recording the extents of each cell (stored in a Bounds object), and properties to describe the coordinates. An array of cell bounds spans the same domain axes as its coordinate array, with the addition of an extra dimension whose size is that of the number of vertices of each cell. This extra dimension does not correspond to a domain axis construct since it does not relate to an independent axis of the domain. Note that, for climatological time axes, the bounds are interpreted in a special way indicated by the cell method constructs.

NetCDF interface

{{netcdf variable}}

Initialisation

Parameters
properties: dict, optional

Set descriptive properties. The dictionary keys are property names, with corresponding values.

Properties may also be set after initialisation with the set_properties and set_property methods.

Parameter example:

properties={'standard_name': 'time'}

data: data_like, optional

Set the data.

A data_like object is any object that can be converted to a Data object, i.e. numpy array_like objects, Data objects, and cf instances that contain Data objects.

The data also may be set after initialisation with the set_data method.

bounds: Bounds, optional

Set the bounds array.

The bounds array may also be set after initialisation with the set_bounds method.

geometry: str, optional

Set the geometry type.

The geometry type may also be set after initialisation with the set_geometry method.

Parameter example:

geometry='polygon'

interior_ring: InteriorRing, optional

Set the interior ring variable.

The interior ring variable may also be set after initialisation with the set_interior_ring method.

source: optional

Convert source, which can be any type of object, to a DimensionCoordinate instance.

All other parameters, apart from copy, are ignored and their values are instead inferred from source by assuming that it has the DimensionCoordinate API. Any parameters that can not be retrieved from source in this way are assumed to have their default value.

Note that if x is also a DimensionCoordinate instance then cf.DimensionCoordinate(source=x) is equivalent to x.copy().

copy: bool, optional

If True (the default) then deep copy the input parameters prior to initialisation. By default the parameters are not deep copied.

Inspection

Methods

dump

A full description of the dimension coordinate construct.

identity

Return the canonical identity.

identities

Return all possible identities.

direction

Return True if the dimension coordinate values are increasing, otherwise return False.

inspect

Inspect the object for debugging.

Attributes

construct_type

Return a description of the construct type.

id

An identity for the DimensionCoordinate object.

ctype

The CF coordinate type.

T

True if and only if the data are coordinates for a CF ‘T’ axis.

X

True if and only if the data are coordinates for a CF ‘X’ axis.

Y

True if and only if the data are coordinates for a CF ‘Y’ axis.

Z

True if and only if the data are coordinates for a CF ‘Z’ axis.

decreasing

True if the dimension coordinate is decreasing, otherwise False.

increasing

True for dimension coordinate constructs, False otherwise.

Bounds

Methods

del_bounds

Remove the bounds.

get_bounds

Return the bounds.

has_bounds

Whether or not there are bounds.

set_bounds

Set the bounds.

get_bounds_data

Return the bounds data.

create_bounds

Create cell bounds.

contiguous

Return True if a construct has contiguous cells.

Attributes

bounds

Return the bounds.

cellsize

The cell sizes.

lower_bounds

The lower bounds of cells.

upper_bounds

The upper bounds of cells.

Geometries

Methods

del_geometry

Remove the geometry type.

get_geometry

Return the geometry type.

has_geometry

True if there is a geometry type.

set_geometry

Set the geometry type.

del_interior_ring

Remove the geometry type.

get_interior_ring

Return the interior ring variable for polygon geometries.

has_interior_ring

Whether or not there is an interior ring variable.

set_interior_ring

Set the interior_ring.

del_node_count

Remove the node count variable for geometry bounds.

get_node_count

Return the node count variable for geometry bounds.

has_node_count

Whether geometry bounds have a node count variable.

set_node_count

Set the node count variable for geometry bounds.

del_part_node_count

Remove the part node count variable for geometry bounds.

get_part_node_count

Return the part node count variable for geometry bounds.

has_part_node_count

Whether geometry bounds have a part node count variable.

set_part_node_count

Set the part node count variable for geometry bounds.

Attributes

interior_ring

Return the interior ring variable for polygon geometries.

Climatology

Methods

del_climatology

Remove the climatology setting.

get_climatology

Return the climatology setting.

is_climatology

True if the coordinates are climatological.

set_climatology

Set whether or not coordinates are climatological.

Selection

Methods

match_by_identity

Determine whether or not a variable satisfies conditions.

match_by_naxes

Whether or not the data has a given dimensionality.

match_by_ncvar

Whether or not the netCDF variable name satisfies conditions.

match_by_property

Determine whether or not a variable satisfies conditions.

match_by_units

Whether or not the construct has given units.

Properties

Methods

del_property

Remove a property.

get_property

Get a CF property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

del_properties

Remove properties.

set_properties

Set properties.

Attributes

add_offset

The add_offset CF property.

axis

The axis CF property.

calendar

The calendar CF property.

comment

The comment CF property.

_FillValue

The _FillValue CF property.

history

The history CF property.

leap_month

The leap_month CF property.

leap_year

The leap_year CF property.

long_name

The long_name CF property.

missing_value

The missing_value CF property.

month_lengths

The month_lengths CF property.

positive

The positive CF property.

scale_factor

The scale_factor CF property.

standard_name

The standard_name CF property.

units

The units CF property.

valid_max

The valid_max CF property.

valid_min

The valid_min CF property.

valid_range

The valid_range CF property.

Units

Methods

override_units

Override the units.

override_calendar

Override the calendar of date-time units.

Attributes

Units

The cf.Units object containing the units of the data array.

Data

Attributes

array

A numpy array deep copy of the data.

Data

Deprecated at version 3.0.0, use data attribute or get_data method instead.

data

The Data object containing the data array.

datetime_array

An independent numpy array of date-time objects.

datum

Return an element of the data array as a standard Python scalar.

dtype

The numpy data type of the data array.

isscalar

True if the data array is scalar.

ndim

The number of data dimensions.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data.

varray

A numpy array view of the data.

Methods

to_dask_array

Convert the data to a dask array.

__getitem__

Return a subspace of the field construct defined by indices.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

Rearranging elements

flatten

Flatten axes of the data.

flip

Flips the dimension coordinate, that is reverses its direction.

insert_dimension

Expand the shape of the data array.

roll

Rolls the dimension coordinate along a cyclic axis.

squeeze

Remove size one axes from the data array.

swapaxes

Interchange two axes of an array.

transpose

Permute the axes of the data array.

Expanding the data

halo

Expand the data by adding a halo.

pad_missing

Pad an axis with missing data.

Data array mask

apply_masking

Apply masking as defined by the CF conventions.

count

Count the non-masked elements of the data.

count_masked

Count the masked elements of the data.

fill_value

Return the data array missing data value.

masked_invalid

Mask the array where invalid values occur (NaN or inf).

binary_mask

A binary (0 and 1) missing data mask of the data array.

hardmask

Whether the mask is hard (True) or soft (False).

mask

The mask of the data array.

Changing data values

__setitem__

Called to implement assignment to x[indices]

halo

Expand the data by adding a halo.

masked_invalid

Mask the array where invalid values occur (NaN or inf).

subspace

Return a new variable whose data is subspaced.

where

Set data array elements depending on a condition.

Cyclicity

Methods

autoperiod

Set the period of cyclicity where it can be determined.

Attributes

iscyclic

Whether or not a given axis is cyclic.

isperiodic

True if a given axis is periodic.

Miscellaneous

rechunk

Change the chunk structure of the data.

close

Close all files referenced by the construct.

convert_reference_time

Convert reference time data values to have new units.

cyclic

Set the cyclicity of axes of the data array.

get_original_filenames

The names of files containing the original data and metadata.

period

Return or set the period for cyclic values.

persist

Persist the underlying dask array into memory.

Miscellaneous

Methods

concatenate

Join a sequence of variables together.

copy

Return a deep copy.

create_regular

Create a new DimensionCoordinate with the given range and cellsize.

creation_commands

Return the commands that would create the construct.

equals

Whether two instances are the same.

inspect

Inspect the object for debugging.

to_memory

Bring data on disk into memory.

uncompress

Uncompress the construct.

del_cell_characteristics

Remove the cell characteristics.

get_cell_characteristics

Return cell characteristics.

has_cell_characteristics

Whether or not there are any cell characteristics.

set_cell_characteristics

Set cell characteristics.

Mathematical operations

Methods

Trigonometrical and hyperbolic functions

arccos

Take the trigonometric inverse cosine of the data element- wise.

arccosh

Take the inverse hyperbolic cosine of the data element-wise.

arcsin

Take the trigonometric inverse sine of the data element-wise.

arcsinh

Take the inverse hyperbolic sine of the data element-wise.

arctan

Take the trigonometric inverse tangent of the data element- wise.

arctanh

Take the inverse hyperbolic tangent of the data element-wise.

cos

Take the trigonometric cosine of the data element-wise.

cosh

Take the hyperbolic cosine of the data element-wise.

sin

Take the trigonometric sine of the data element-wise.

sinh

Take the hyperbolic sine of the data element-wise.

tan

Take the trigonometric tangent of the data element-wise.

tanh

Take the hyperbolic tangent of the data element-wise.

Rounding and truncation

ceil

The ceiling of the data, element-wise.

clip

Limit the values in the data.

floor

Floor the data array, element-wise.

rint

Round the data to the nearest integer, element-wise.

round

Round the data to the given number of decimals.

trunc

Truncate the data, element-wise.

Statistical collapses

maximum

The maximum of the data array.

mean

The unweighted mean the data array.

mid_range

The unweighted average of the maximum and minimum of the data array.

minimum

The minimum of the data array.

range

The absolute difference between the maximum and minimum of the data array.

sample_size

The number of non-missing data elements in the data array.

sum

The sum of the data array.

standard_deviation

The unweighted sample standard deviation of the data array.

variance

The unweighted sample variance of the data array.

Exponential and logarithmic functions

exp

The exponential of the data, element-wise.

log

The logarithm of the data array.

Date-time operations

Attributes

day

The day of each date-time data array element.

datetime_array

An independent numpy array of date-time objects.

hour

The hour of each date-time data array element.

minute

The minute of each date-time data array element.

month

The month of each date-time data array element.

reference_datetime

The reference date-time of units of elapsed time.

second

The second of each date-time data array element.

year

The year of each date-time data array element.

Logic functions

Truth value testing

all

Test whether all data elements evaluate to True.

any

Test whether any data elements evaluate to True.

Comparison

allclose

Test whether all data are element-wise equal to other, broadcastable data.

equivalent

True if two constructs are equal, False otherwise.

Set operations

unique

The unique elements of the data.

NetCDF

Methods

nc_del_variable

Remove the netCDF variable name.

nc_get_variable

Return the netCDF variable name.

nc_has_variable

Whether the netCDF variable name has been set.

nc_set_variable

Set the netCDF variable name.

Groups

Methods

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

CFA

Methods

add_file_location

Add a new file location in-place.

cfa_clear_file_substitutions

Remove all of the CFA-netCDF file name substitutions.

cfa_del_file_substitution

Remove a CFA-netCDF file name substitution.

cfa_file_substitutions

Return the CFA-netCDF file name substitutions.

cfa_update_file_substitutions

Set CFA-netCDF file name substitutions.

del_file_location

Remove a file location in-place.

file_locations

The locations of files containing parts of the data.

Aliases

Methods

match

Alias for match_by_identity.

max

Alias for maximum.

min

Alias for minimum.

sd

Alias for standard_deviation

var

Alias for variance

Attributes

dtarray

Alias for datetime_array.

Arithmetic and comparison operations

Arithmetic, bitwise and comparison operations are defined as element-wise operations on the data, which yield a new construct or, for augmented assignments, modify the construct’s data in-place.

Comparison operators

__lt__

The rich comparison operator <

__le__

The rich comparison operator <=

__eq__

The rich comparison operator ==

__ne__

The rich comparison operator !=

__gt__

The rich comparison operator >

__ge__

The rich comparison operator >=

Binary arithmetic operators

__add__

The binary arithmetic operation +

__sub__

The binary arithmetic operation -

__mul__

The binary arithmetic operation *

__div__

The binary arithmetic operation /

__truediv__

The binary arithmetic operation / (true division)

__floordiv__

The binary arithmetic operation //

__pow__

The binary arithmetic operations ** and pow

__mod__

The binary arithmetic operation %

Binary arithmetic operators with reflected (swapped) operands

__radd__

The binary arithmetic operation + with reflected operands.

__rsub__

The binary arithmetic operation - with reflected operands.

__rmul__

The binary arithmetic operation * with reflected operands.

__rdiv__

The binary arithmetic operation / with reflected operands.

__rtruediv__

The binary arithmetic operation / (true division) with reflected operands.

__rfloordiv__

The binary arithmetic operation // with reflected operands.

__rpow__

The binary arithmetic operations ** and pow with reflected operands.

__rmod__

The binary arithmetic operation % with reflected operands.

Augmented arithmetic assignments

__iadd__

The augmented arithmetic assignment +=

__isub__

The augmented arithmetic assignment -=

__imul__

The augmented arithmetic assignment *=

__idiv__

The augmented arithmetic assignment /=

__itruediv__

The augmented arithmetic assignment /= (true division)

__ifloordiv__

The augmented arithmetic assignment //=

__ipow__

The augmented arithmetic assignment **=

__imod__

The binary arithmetic operation %=

Unary arithmetic operators

__neg__

The unary arithmetic operation -

__pos__

The unary arithmetic operation +

__abs__

The unary arithmetic operation abs

Binary bitwise operators

__and__

The binary bitwise operation &

__or__

The binary bitwise operation |

__xor__

The binary bitwise operation ^

__lshift__

The binary bitwise operation <<

__rshift__

The binary bitwise operation >>

Binary bitwise operators with reflected (swapped) operands

__rand__

The binary bitwise operation & with reflected operands.

__ror__

The binary bitwise operation | with reflected operands.

__rxor__

The binary bitwise operation ^ with reflected operands.

__rlshift__

The binary bitwise operation << with reflected operands.

__rrshift__

The binary bitwise operation >> with reflected operands.

Augmented bitwise assignments

__iand__

The augmented bitwise assignment &=

__ior__

The augmented bitwise assignment |=

__ixor__

The augmented bitwise assignment ^=

__ilshift__

The augmented bitwise assignment <<=

__irshift__

The augmented bitwise assignment >>=

Unary bitwise operators

__invert__

The unary bitwise operation ~

Special

Methods

__contains__

Called to implement membership test operators.

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace of the field construct defined by indices.

__repr__

Called by the repr built-in function.

__setitem__

Called to implement assignment to x[indices]

__str__

Called by the str built-in function.

__array__

Returns a numpy array representation of the data.

__data__

Returns a new reference to the data.

__query_isclose__

Query interface method for an “is close” condition.

Deprecated

Methods

asdatetime

Deprecated at version 3.0.0.

asreftime

Deprecated at version 3.0.0.

chunk

Partition the data array.

delprop

Deprecated at version 3.0.0, use method del_property instead.

expand_dims

Deprecated at version 3.0.0, use method insert_dimension instead.

files

Deprecated at version 3.4.0, consider using the get_original_filenames method instead.

get_filenames

Return the name of the file or files containing the data.

getprop

Deprecated at version 3.0.0, use method get_property instead.

hasprop

Deprecated at version 3.0.0, use method has_property instead.

insert_data

Deprecated at version 3.0.0, use set_data method instead.

mask_invalid

Mask the array where invalid values occur.

name

Deprecated at version 3.0.0, use method ‘identity’ instead.

remove_data

Deprecated at version 3.0.0, use method del_data instead.

select

Deprecated at version 3.0.0.

setprop

Deprecated at version 3.0.0, use method set_property instead.

Attributes

attributes

Deprecated at version 3.0.0.

Data

Deprecated at version 3.0.0, use data attribute or get_data method instead.

dtvarray

Deprecated at version 3.0.0.

hasbounds

Deprecated at version 3.0.0, use method has_bounds instead.

hasdata

Deprecated at version 3.0.0, use has_data method instead.

isauxiliary

Deprecated at version 3.7.0, use construct_type attribute instead.

isdimension

Deprecated at version 3.7.0, use construct_type attribute instead.

isdomainancillary

Deprecated at version 3.7.0, use construct_type attribute instead.

isfieldancillary

Deprecated at version 3.7.0, use construct_type attribute instead.

ismeasure

Deprecated at version 3.7.0, use construct_type attribute instead.

role

Deprecated at version 3.0.0, use construct_type attribute instead.

unsafe_array

Deprecated at version 3.0.0, use array attribute instead.