РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
363 of 541 menu

Метод astype

Метод astype создает копию массива с элементами, преобразованными к заданному типу данных. Первым параметром метод принимает желаемый тип данных в виде строки или объекта типа NumPy. Вторым параметром можно управлять способом копирования данных.

Метод не изменяет исходный массив, а возвращает новый массив с указанным типом данных. Если преобразование невозможно (например, преобразование строки в число), будет вызвана ошибка.

Синтаксис

arr.astype(dtype, order='C', casting='unsafe', copy=True)

Пример

Давайте создадим массив целых чисел и преобразуем его в массив чисел с плавающей точкой:

import numpy as np arr = np.array([1, 2, 3, 4, 5]) res = arr.astype(np.float64) print(res)

Результат выполнения кода:

[1. 2. 3. 4. 5.]

Пример

Преобразуем массив чисел с плавающей точкой в массив целых чисел с потерей дробной части:

import numpy as np arr = np.array([1.2, 2.8, 3.5, 4.1, 5.9]) res = arr.astype(np.int32) print(res)

Результат выполнения кода:

[1 2 3 4 5]

Пример

Преобразуем массив целых чисел в массив логических значений:

import numpy as np arr = np.array([0, 1, 2, 0, 3]) res = arr.astype(np.bool_) print(res)

Результат выполнения кода:

[False True True False True]

Пример

Преобразуем массив чисел в массив строк с указанием типа через строку:

import numpy as np arr = np.array([10, 20, 30, 40, 50]) res = arr.astype('str') print(res)

Результат выполнения кода:

['10' '20' '30' '40' '50']

Пример

Преобразуем двумерный массив из целых чисел в массив чисел с плавающей точкой:

import numpy as np arr = np.array([[1, 2, 3], [4, 5, 6]]) res = arr.astype(np.float32) print(res)

Результат выполнения кода:

[[1. 2. 3.] [4. 5. 6.]]

Пример

Проверим, что исходный массив не изменился после преобразования типа:

import numpy as np arr = np.array([1, 2, 3, 4, 5]) res = arr.astype(np.float64) print(arr) print(res)

Результат выполнения кода:

[1 2 3 4 5] [1. 2. 3. 4. 5.]

Пример

Преобразуем массив с сохранением размера памяти через параметр casting:

import numpy as np arr = np.array([1, 2, 3, 4, 5]) res = arr.astype(np.int8, casting='safe') print(res.dtype)

Результат выполнения кода:

int8

Смотрите также

  • атрибут dtype,
    который хранит тип данных элементов массива
  • метод copy,
    который создает копию массива
  • метод view,
    который создает новое представление массива
  • метод tolist,
    который преобразует массив в список Python
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить