numpy.ndarray.astype
-
ndarray.astype(dtype, order='K', casting='unsafe', subok=True, copy=True) -
Копия массива, преобразованного к указанному типу.
Параметры: dtype : str или dtype
Код типа или тип данных, к которому преобразуется массив.
order : {‘C’, ‘F’, ‘A’, ‘K’}, необязательно
Управляет порядком расположения памяти результата. ‘C’ означает порядок C, ‘F’ означает порядок Fortran, ‘A’ означает порядок ‘F’, если все массивы имеют непрерывный порядок Fortran, в противном случае — порядок ‘C’, а ‘K’ означает как можно более близкое к порядку расположения элементов массива в памяти. По умолчанию — ‘K’.
casting : {‘no’, ‘equiv’, ‘safe’, ‘same_kind’, ‘unsafe’}, необязательно
Управляет тем, какой тип преобразования данных может произойти. По умолчанию — ‘unsafe’ для обратной совместимости.
- ‘no’ означает, что типы данных вообще не должны преобразовываться.
- ‘equiv’ означает, что разрешаются только изменения порядка байтов.
- ‘safe’ означает, что разрешены только преобразования, которые могут сохранить значения.
- ‘same_kind’ означает, что разрешены только безопасные преобразования или преобразования в пределах одного типа, например, float64 в float32.
- ‘unsafe’ означает, что могут быть выполнены любые преобразования данных.
subok : bool, необязательно
Если True, то подклассы будут переданы (по умолчанию), в противном случае возвращаемый массив будет принудительно преобразован в массив базового класса.
copy : bool, необязательно
По умолчанию astype всегда возвращает новый выделенный массив. Если это установлено в false, и выполняются требования
dtype,order, иsubok, то вместо копии возвращается входной массив.Возвращает: arr_t : ndarray
Если
copyне равно False и выполняются другие условия для возврата входного массива (см. описание параметраcopy),arr_t— это новый массив той же формы, что и входной массив, с dtype и order, заданнымиdtype,order.Возможные исключения: ComplexWarning
При преобразовании из комплексного типа в float или int. Чтобы избежать этого, следует использовать
a.real.astype(t).Примечания
Начиная с NumPy 1.9, метод astype теперь возвращает ошибку, если строковый тип dtype, к которому требуется преобразование, недостаточно длинный в режиме «safe» преобразования, чтобы содержать максимальное значение целочисленного/вещественного массива, который преобразуется. Раньше преобразование допускалось даже в том случае, если результат был усечён.
Примеры
>>> x = np.array([1, 2, 2.5]) >>> x array([ 1. , 2. , 2.5])
>>> x.astype(int) array([1, 2, 2])
© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.14.5/reference/generated/numpy.ndarray.astype.html