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.mixin.files.Files, 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.

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.

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

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

All other parameters, apart from copy, are ignored and their values are instead inferred from source by assuming that it has the Index 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 Index instance then cfdm.Index(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 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.

del_properties

Remove 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

array

A numpy array deep copy of the data.

data

Return the data.

datetime_array

An independent numpy array of date-time objects.

dtype

Data-type of the data elements.

ndim

The number of data dimensions.

shape

A tuple of the data array’s dimension sizes.

size

The number elements in the data.

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.

get_original_filenames

The names of files containing the original data and metadata.

has_bounds

Whether or not there are cell bounds.

uncompress

Uncompress the construct.

to_memory

Bring data on disk into memory.

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 sample dimension group hierarchy.

nc_clear_sample_dimension_groups

Remove the netCDF sample dimension group hierarchy.

nc_set_sample_dimension_groups

Set the netCDF sample 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.