Previous topic

numpy.fromregex

Next topic

numpy.array_repr

numpy.array2string

numpy.array2string(a, max_line_width=None, precision=None, suppress_small=None, separator=' ', prefix='', style=<class 'numpy._globals._NoValue'>, formatter=None, threshold=None, edgeitems=None, sign=None)[source]

Return a string representation of an array.

Parameters:

a : ndarray

Input array.

max_line_width : int, optional

The maximum number of columns the string should span. Newline characters splits the string appropriately after array elements.

precision : int, optional

Floating point precision. Default is the current printing precision (usually 8), which can be altered using set_printoptions.

suppress_small : bool, optional

Represent very small numbers as zero. A number is “very small” if it is smaller than the current printing precision.

separator : str, optional

Inserted between elements.

prefix : str, optional

An array is typically printed as:

'prefix(' + array2string(a) + ')'

The length of the prefix string is used to align the output correctly.

style : _NoValue, optional

Has no effect, do not use.

Deprecated since version 1.14.0.

formatter : dict of callables, optional

If not None, the keys should indicate the type(s) that the respective formatting function applies to. Callables should return a string. Types that are not specified (by their corresponding keys) are handled by the default formatters. Individual types for which a formatter can be set are:

- 'bool'
- 'int'
- 'timedelta' : a `numpy.timedelta64`
- 'datetime' : a `numpy.datetime64`
- 'float'
- 'longfloat' : 128-bit floats
- 'complexfloat'
- 'longcomplexfloat' : composed of two 128-bit floats
- 'numpystr' : types `numpy.string_` and `numpy.unicode_`
- 'str' : all other strings

Other keys that can be used to set a group of types at once are:

- 'all' : sets all types
- 'int_kind' : sets 'int'
- 'float_kind' : sets 'float' and 'longfloat'
- 'complex_kind' : sets 'complexfloat' and 'longcomplexfloat'
- 'str_kind' : sets 'str' and 'numpystr'

threshold : int, optional

Total number of array elements which trigger summarization rather than full repr.

edgeitems : int, optional

Number of array items in summary at beginning and end of each dimension.

sign : string, either ‘-‘, ‘+’, ‘ ‘ or ‘legacy’, optional

Controls printing of the sign of floating-point types. If ‘+’, always print the sign of positive values. If ‘ ‘, always prints a space (whitespace character) in the sign position of positive values. If ‘-‘, omit the sign character of positive values. If ‘legacy’, print a space for positive values except in 0d arrays.

Returns:

array_str : str

String representation of the array.

Raises:

TypeError

if a callable in formatter does not return a string.

Notes

If a formatter is specified for a certain type, the precision keyword is ignored for that type.

This is a very flexible function; array_repr and array_str are using array2string internally so keywords with the same name should work identically in all three functions.

Examples

>>> x = np.array([1e-16,1,2,3])
>>> print(np.array2string(x, precision=2, separator=',',
...                       suppress_small=True))
[ 0., 1., 2., 3.]
>>> x  = np.arange(3.)
>>> np.array2string(x, formatter={'float_kind':lambda x: "%.2f" % x})
'[0.00 1.00 2.00]'
>>> x  = np.arange(3)
>>> np.array2string(x, formatter={'int':lambda x: hex(x)})
'[0x0L 0x1L 0x2L]'