cfdm.Field.set_data

Field.set_data(data, axes=None, copy=True, inplace=True)[source]

Set the data of the field construct.

The units, calendar and fill value properties of the data object are removed prior to insertion.

New in version (cfdm): 1.7.0

Parameters
data: data_like

The data to be inserted.

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.

axes: (sequence of) str, or None

The identifiers of the domain axes spanned by the data array. If None then the data axes are not set.

The axes may also be set afterwards with the set_data_axes method.

Parameter example:

axes=['domainaxis2']

Parameter example:

axes='domainaxis2'

Parameter example:

axes=['domainaxis2', 'domainaxis1']

Parameter example:

axes=None

copy: bool, optional

If False then do not copy the data prior to insertion. By default the data are copied.

inplace: bool, optional:

If False then do not do the operation in-place and return a new, modified Field instance. By default the operation is in-place and None is returned.

New in version (cfdm): 1.8.7.0

Returns
None or Field

If the operation was in-place then None is returned, otherwise return a new Field instance containing the new data.

Examples:

>>> f = cfdm.Field()
>>> f.set_data([1, 2, 3])
>>> f.has_data()
True
>>> f.get_data()
<Data(3): [1, 2, 3]>
>>> f.data
<Data(3): [1, 2, 3]>
>>> f.del_data()
<Data(3): [1, 2, 3]>
>>> g = f.set_data([4, 5, 6], inplace=False)
>>> g.data
<Data(3): [4, 5, 6]>
>>> f.has_data()
False
>>> print(f.get_data(None))
None
>>> print(f.del_data(None))
None