cf.Index¶
-
class
cf.
Index
(properties=None, data=None, source=None, copy=True, _use_data=True)[source]¶ Bases:
cf.mixin.propertiesdata.PropertiesData
,cfdm.index.Index
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
andnc_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
andnc_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
andnc_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 3.0.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.
- Parameter example:
properties={'long_name': 'which station this obs is for'}
Properties may also be set after initialisation with the
set_properties
andset_property
methods.- 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.
- properties:
Inspection¶
Methods
dump |
A full description of the index variable. |
identity |
Return the canonical identity. |
identities |
Return all possible identities. |
Selection¶
Methods
match_by_identity |
Whether or not the construct identity satisfies conditions. |
match_by_naxes |
Whether or not the data has a given dimensionality. |
match_by_ncvar |
Whether or not the construct has a netCDF variable name. |
match_by_property |
Whether or not properties satisfy 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. |
set_properties |
Set properties. |
Attributes
add_offset |
The add_offset 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. |
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 array. |
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 dimensions in the data array. |
shape |
A tuple of the data array’s dimension sizes. |
size |
The number of elements in the data array. |
varray |
A numpy array view of the data array. |
Methods
__getitem__ |
Return a subspace defined by indices |
del_data |
Remove the data. |
get_data |
Return the data. |
has_data |
Whether a data has been set. |
set_data |
Set the data. |
Rearranging elements
flip |
Flip (reverse the direction of) data dimensions. |
insert_dimension |
Expand the shape of the data array. |
roll |
Roll the data along an axis. |
squeeze |
Remove size one axes from the data array. |
transpose |
Permute the axes of the data array. |
Data array mask
binary_mask |
A binary (0 and 1) missing data mask of the data array. |
count |
Count the non-masked elements of the data. |
count_masked |
Count the masked elements of the data. |
hardmask |
Whether the mask is hard (True) or soft (False). |
fill_value |
Return the data array missing data value. |
mask |
The mask of the data array. |
mask_invalid |
Mask the array where invalid values occur. |
Changing data values
__setitem__ |
Called to implement assignment to x[indices] |
mask_invalid |
Mask the array where invalid values occur. |
subspace |
Return a new variable whose data is subspaced. |
where |
Set data array elements depending on a condition. |
Miscellaneous
chunk |
Partition the data array. |
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 an axis. |
files |
Return the names of any files containing parts of the data array. |
has_bounds |
Whether or not there are cell bounds. |
Miscellaneous¶
Methods
concatenate |
Join a sequence of variables together. |
copy |
Return a deep copy. |
equals |
Whether two instances are the same. |
Attributes
T |
True if and only if the data are coordinates for a CF ‘T’ axis. |
X |
Always False. |
Y |
Always False. |
Z |
Always False. |
id |
TODO |
Mathematical operations¶
Methods
Trigonometrical functions
cos |
Take the trigonometric cosine of the data, element-wise. |
sin |
The trigonometric sine of the data, element-wise. |
tan |
The trigonometric 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
max |
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. |
min |
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. |
sd |
The unweighted sample standard deviation of the data array. |
var |
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 |
TODO |
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. |
equals |
Whether two instances are the same. |
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. |
cf.nc_del_dimension |
|
cf.nc_get_dimension |
|
cf.nc_has_dimension |
|
cf.nc_set_dimension |
|
cf.nc_del_sample_dimension |
|
cf.nc_get_sample_dimension |
|
cf.nc_has_sample_dimension |
|
cf.nc_set_sample_dimension |
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 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__ |
TODO |
__data__ |
Returns a new reference to the data. |
__query_set__ |
TODO |
__query_wi__ |
TODO |
__query_wo__ |
TODO |