cfdm.Index


class cfdm.Index(properties=None, data=None, source=None, copy=True, _use_data=True)[source]

Bases: cfdm.mixin.netcdf.NetCDFVariable, cfdm.mixin.netcdf.NetCDFDimension, cfdm.mixin.netcdf.NetCDFSampleDimension, cfdm.mixin.propertiesdata.PropertiesData, cfdm.core.abstract.propertiesdata.PropertiesData

An index variable required to uncompress a ragged array.

A collection of features stored using an indexed ragged array combines all features along a single dimension (the sample dimension) such that the values of each feature in the collection are interleaved.

The information needed to uncompress the data is stored in an index variable that specifies the feature that each element of the sample dimension belongs to.

NetCDF interface

The netCDF variable name may be accessed with the nc_set_variable, nc_get_variable, nc_del_variable and nc_has_variable methods.

The netCDF variable group structure may be accessed with the nc_set_variable, nc_get_variable, nc_variable_groups, nc_clear_variable_groups and nc_set_variable_groups methods.

The name of the netCDF dimension spanned by the index variable’s data (which does not correspond to a domain axis construct) may be accessed with the nc_set_dimension, nc_get_dimension, nc_del_dimension and nc_has_dimension methods.

The name of the netCDF sample dimension spanned by the compressed data (which does not correspond to a domain axis contract) may be accessed with the nc_set_sample_dimension, nc_get_sample_dimension, nc_del_sample_dimension and nc_has_sample_dimension methods.

Note

The netCDF sample dimension and the netCDF dimension spanned by the index variable’s data are should be the same, unless the compressed data is an indexed contiguous ragged array, in which case they must be different.

The name of the netCDF instance dimension (that is stored in the “instance_dimension” netCDF attribute) is accessed via the corresponding domain axis construct.

New in version (cfdm): 1.7.0

Initialisation

Parameters
properties: dict, optional

Set descriptive properties. The dictionary keys are property names, with corresponding values. Ignored if the source parameter is set.

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

Parameter example:

properties={'long_name': 'which station this obs is for'}

data: data_like, optional

Set the data. Ignored if the source parameter is set.

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

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

source: optional

Initialise the properties and data from those of source.

Note that if source is a Index instance then cfdm.Index(source=source) is equivalent to source.copy().

copy: bool, optional

If False then do not deep copy input parameters prior to initialisation. By default arguments are deep copied.

Inspection

Methods

dump

A full description of the index variable.

identity

Return the canonical identity.

identities

Return all possible identities.

Properties

Methods

del_property

Remove a property.

get_property

Return a property.

has_property

Whether a property has been set.

set_property

Set a property.

properties

Return all properties.

clear_properties

Remove all properties.

set_properties

Set properties.

Data

Methods

apply_masking

Apply masking as defined by the CF conventions.

del_data

Remove the data.

get_data

Return the data.

has_data

Whether or not the construct has data.

set_data

Set the data.

insert_dimension

Expand the shape of the data array.

squeeze

Remove size one axes from the data array.

transpose

Permute the axes of the data array.

Attributes

data

Return the data.

dtype

Data-type of the data elements.

ndim

The number of dimensions in the data array.

shape

A tuple of the data array’s dimension sizes.

size

The number of elements in the data array.

Miscellaneous

Methods

copy

Return a deep copy.

creation_commands

Return the commands that would create the construct.

equals

Whether two instances are the same.

get_filenames

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

has_bounds

Whether or not there are cell bounds.

uncompress

Uncompress the construct.

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.

nc_del_dimension

Remove the netCDF dimension name.

nc_get_dimension

Return the netCDF dimension name.

nc_has_dimension

Whether the netCDF dimension name has been set.

nc_set_dimension

Set the netCDF dimension name.

Groups

Methods

nc_variable_groups

Return the netCDF variable group hierarchy.

nc_clear_variable_groups

Remove the netCDF variable group hierarchy.

nc_set_variable_groups

Set the netCDF variable group hierarchy.

nc_dimension_groups

Return the netCDF dimension group hierarchy.

nc_clear_dimension_groups

Remove the netCDF dimension group hierarchy.

nc_set_dimension_groups

Set the netCDF dimension group hierarchy.

Sample dimension

Methods

nc_del_sample_dimension

Remove the netCDF sample dimension name.

nc_get_sample_dimension

Return the netCDF sample dimension name.

nc_has_sample_dimension

Whether the netCDF sample dimension name has been set.

nc_set_sample_dimension

Set the netCDF sample dimension name.

nc_sample_dimension_groups

Return the netCDF dimension group hierarchy.

nc_clear_sample_dimension_groups

Remove the netCDF dimension group hierarchy.

nc_set_sample_dimension_groups

Set the netCDF dimension group hierarchy.

Special

Methods

__deepcopy__

Called by the copy.deepcopy function.

__getitem__

Return a subspace defined by indices.

__repr__

Called by the repr built-in function.

__str__

Called by the str built-in function.

Docstring substitutions

Methods

_docstring_special_substitutions

Return the special docstring substitutions.

_docstring_substitutions

Returns the substitutions that apply to methods of the class.

_docstring_package_depth

Returns the class {{package}} substitutions package depth.

_docstring_method_exclusions

Returns method names excluded in the class substitutions.