cfdm.Field.insert_dimension

Field.insert_dimension(axis, position=0, inplace=False)[source]

Expand the shape of the data array.

Inserts a new size 1 axis, corresponding to an existing domain axis construct, into the data array.

New in version (cfdm): 1.7.0

See also

squeeze, transpose

Parameters
axis: str

The identifier of the domain axis construct corresponding to the inserted axis.

Parameter example:

axis='domainaxis2'

position: int, optional

Specify the position that the new axis will have in the data array. By default the new axis has position 0, the slowest varying position. Negative integers counting from the last position are allowed.

Parameter example:

position=2

Parameter example:

position=-1

inplace: bool, optional

If True then do the operation in-place and return None.

Returns
Field or None

The new field construct with expanded data axes. If the operation was in-place then None is returned.

Examples:

>>> f.data.shape
(19, 73, 96)
>>> f.insert_dimension('domainaxis3').data.shape
(1, 96, 73, 19)
>>> f.insert_dimension('domainaxis3', position=3).data.shape
(19, 73, 96, 1)
>>> f.insert_dimension('domainaxis3', position=-1, inplace=True)
(19, 73, 1, 96)
>>> f.data.shape
(19, 73, 1, 96)