numpy.asanyarray

numpy.asanyarray(a, dtype=None, order=None)

Функция asanyarray() преобразует последовательность в массив NumPy, не приводя подклассы ndarray к базовому классу.

Параметры:
a - некоторая последовательность
Входные данные которые могут быть преобразованы в массив: списки и кортежи, списки списков и кортежи кортежей, списки кортежей и кортежи списков, а так же кортежи или списки других массивов NumPy.
dtype - тип данных NumPy (необязательный)
Определяет тип данных выходного массива.
order - 'C' или 'F' (необязательный)
Этот параметр определяет в каком порядке массивы должны храниться в памяти: строчном C-стиле или столбчатом стиле Fortran. По умолчанию установлен в 'C'.
Возвращает:
результат - массив NumPy
Интерпретация входных данных a, как массива NumPy. Если a является объектом ndarray или его подклассом, то он не копируется и возвращается в неизменном виде (эквивалентно array(a, dtype, copy=False, order=order, subok=True)).
Смотрите так же: array, asarray, ascontiguousarray, asfortranarray

Примеры

>>> import numpy as np
>>> 
>>> #  Преобразование последовательностей в массив NumPy:
... a = [1, 2, 3]
>>> np.asanyarray(a)
array([1, 2, 3])
>>> 
>>> 
>>> #  Массивы NumPy не копируются:
... a = np.array([1, 2, 3])
>>> b = np.asanyarray(a)
>>> 
>>> b is a    #  Данные в 'b' физически те же что и в 'a'
True
>>> a[0] = 77    #  Изменения в массиве 'a'
>>> a
array([77,  2,  3])
>>> 
>>> b    #  Повлекут за собой изменения в массиве 'b'
array([77,  2,  3])
>>>
>>>
>>> #  Копирование происходит только
... #  при несоответствии типов данных массивов
... a = np.array([1,2,3], dtype = np.int8)
>>> b = np.asanyarray(a, dtype = np.int8)
>>> b is a
True
>>> 
>>> b = np.asanyarray(a, dtype = np.float32)
>>> b is a
False
>>> 
>>> 
>>> #  Подкласс будет возвращен как есть:
... a = np.mat('1 1; 2 2')
>>> a
matrix([[1, 1],
        [2, 2]])
>>> 
>>> b = np.asanyarray(a)
>>> b
matrix([[1, 1],
        [2, 2]])
>>> 
>>> 
>>> #  Список массивов преобразуется в массив
... a = np.array([1, 1])
>>> b = np.array([2, 2])
>>> c = [a, b]
>>> 
>>> d = np.asanyarray(c)
>>> d
array([[1, 1],
       [2, 2]])