MCPcopy Index your code
hub / github.com/numpy/numpy / rename_fields

Function rename_fields

numpy/lib/recfunctions.py:608–645  ·  view source on GitHub ↗

Rename the fields from a flexible-datatype ndarray or recarray. Nested fields are supported. Parameters ---------- base : ndarray Input array whose fields must be modified. namemapper : dictionary Dictionary mapping old field names to their new version.

(base, namemapper)

Source from the content-addressed store, hash-verified

606
607@array_function_dispatch(_rename_fields_dispatcher)
608def rename_fields(base, namemapper):
609 """
610 Rename the fields from a flexible-datatype ndarray or recarray.
611
612 Nested fields are supported.
613
614 Parameters
615 ----------
616 base : ndarray
617 Input array whose fields must be modified.
618 namemapper : dictionary
619 Dictionary mapping old field names to their new version.
620
621 Examples
622 --------
623 >>> import numpy as np
624 >>> from numpy.lib import recfunctions as rfn
625 >>> a = np.array([(1, (2, [3.0, 30.])), (4, (5, [6.0, 60.]))],
626 ... dtype=[('a', int),('b', [('ba', float), ('bb', (float, 2))])])
627 >>> rfn.rename_fields(a, {'a':'A', 'bb':'BB'})
628 array([(1, (2., [ 3., 30.])), (4, (5., [ 6., 60.]))],
629 dtype=[('A', '<i8'), ('b', [('ba', '<f8'), ('BB', '<f8', (2,))])])
630
631 """
632 def _recursive_rename_fields(ndtype, namemapper):
633 newdtype = []
634 for name in ndtype.names:
635 newname = namemapper.get(name, name)
636 current = ndtype[name]
637 if current.names is not None:
638 newdtype.append(
639 (newname, _recursive_rename_fields(current, namemapper))
640 )
641 else:
642 newdtype.append((newname, current))
643 return newdtype
644 newdtype = _recursive_rename_fields(base.dtype, namemapper)
645 return base.view(newdtype)
646
647
648def _append_fields_dispatcher(base, names, data, dtypes=None,

Callers 1

test_rename_fieldsMethod · 0.90

Calls 2

_recursive_rename_fieldsFunction · 0.85
viewMethod · 0.45

Tested by 1

test_rename_fieldsMethod · 0.72

Used in the wild real call sites across dependent graphs

searching dependent graphs…