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 of the index variable may be accessed with the nc_set_variable, nc_get_variable, nc_del_variable and nc_has_variable 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.

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.

New in version 1.7.0.

Initialization

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, optional

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

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

source: optional

Initialize the properties and data from those of source.

copy: bool, optional

If False then do not deep copy input parameters prior to initialization. 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

del_data

Remove the data.

get_data

Return the data.

has_data

Whether a data has been set.

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.

Miscellaneous

Methods

copy

Return a deep copy.

equals

Whether two instances are the same.

get_filenames

Return the name of the file or files containing 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.

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.