numpy.find_common_type
-
numpy.find_common_type(array_types, scalar_types)
[source] -
Determine common type following standard coercion rules.
Parameters: array_types : sequence
A list of dtypes or dtype convertible objects representing arrays.
scalar_types : sequence
A list of dtypes or dtype convertible objects representing scalars.
Returns: datatype : dtype
The common data type, which is the maximum of
array_types
ignoringscalar_types
, unless the maximum ofscalar_types
is of a different kind (dtype.kind
). If the kind is not understood, then None is returned.See also
Examples
>>> np.find_common_type([], [np.int64, np.float32, np.complex]) dtype('complex128') >>> np.find_common_type([np.int64, np.float32], []) dtype('float64')
The standard casting rules ensure that a scalar cannot up-cast an array unless the scalar is of a fundamentally different kind of data (i.e. under a different hierarchy in the data type hierarchy) then the array:
>>> np.find_common_type([np.float32], [np.int64, np.float64]) dtype('float32')
Complex is of a different type, so it up-casts the float in the
array_types
argument:>>> np.find_common_type([np.float32], [np.complex]) dtype('complex128')
Type specifier strings are convertible to dtypes and can therefore be used instead of dtypes:
>>> np.find_common_type(['f4', 'f4', 'i4'], ['c8']) dtype('complex128')
© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.find_common_type.html