Введение в типы данных NumPy

Тип данных - это атрибут, связанный с данными, который определяет тип значений, которые могут храниться в данных, вид операций, которые могут быть выполнены с ним, и, что наиболее важно, объем памяти, необходимый для этого. Некоторые из наиболее распространенных типов данных являются целочисленными, действительными, логическими и char. В этой статье мы попытаемся понять различные типы данных, поддерживаемые Numpy. Numpy - это пакет Python, используемый для научных вычислений. Это чисто написано на языке программирования Си. Следовательно, мы можем предположить, что типы данных в Numpy более или менее являются обновлением типов данных C.

Типы данных Numpy

Numpy поддерживает следующие типы данных:

Тип данных NumpyТесно связанный тип данных CРазмер хранилищаОписание
np.bool_BOOL1 байтможет содержать логические значения, например (True или False) или (0 или 1)
np.byteподписанный символ1 байтможет содержать значения от 0 до 255
np.ubyteсимвол без знака1 байтможет содержать значения от -128 до 127
np.shortподписанный короткий2 байтаможет содержать значения от -32, 768 до 32, 767
np.ushortнеподписанный короткий2 байтаможет содержать значения от 0 до 65 535
np.uintcбез знака int2 или 4 байтаможет содержать значения от 0 до 65 535 или от 0 до 4 294 967 295
np.int_длинная8 байтможет содержать значения от -9223372036854775808 до 9223372036854775807
np.uintбез знака долго8 байтОт 0 до 18446744073709551615
np.longlongдолго долго8 байтможет содержать значения от -9223372036854775808 до 9223372036854775807
np.ulonglongбез знака длинный длинный8 байтОт 0 до 18446744073709551615
np.half / np.float16-позволяет половину точности с
Формат: знаковый бит, показатель 5 бит, мантисса 10 бит
np.singleпоплавок4 байтадопускает точность одного поплавка
Формат: знаковый бит, показатель 8 бит, мантисса 23 бита
np.doubleдвойной8 байтдопускает двойную точность
Формат: знаковый бит, экспонента 11 бит, мантисса 52 бита.
np.longdoubleдлинный двойной8 байтрасширение поплавка
np.csingleпоплавковый комплекс8 байтможет содержать комплекс с реальными и мнимыми частями до
поплавок одинарной точности
np.cdoubleдвойной комплекс16 байтможет содержать комплекс с реальными и мнимыми частями до
поплавок двойной точности
np.clongdoubleдлинный двойной комплекс16 байтрасширение числа с плавающей точкой для комплексного числа
np.int8int8_t1 байтможет содержать значения от -128 до 127
np.int16int16_t2 байтаможет содержать значения от -32, 768 до 32, 767
np.int32int32_t4 байтаможет содержать значения от -2 147 483 648 до 2 147 483 647
np.int64int64_t8 байтможет содержать значения от -9223372036854775808 до 9223372036854775807
np.uint8uint8_t1 байтможет содержать значения от 0 до 255
np.uint16uint16_t2 байтаможет содержать значения от 0 до 65 535
np.uint32uint32_t4 байтаможет содержать значения от 0 до 4 294 967 295
np.uint64uint64_t8 байтможет содержать значения от 0 до 18446744073709551615
np.intpintptr_t4 байтацелое число со знаком, используемое для индексации
np.uintpuintptr_t4 байтацелое число без знака, используемое для удержания указателя
np.float32поплавок4 байтаточность одного поплавка
np.float64двойной8 байтдвойная точность
np.complex64поплавковый комплекс8 байтТочность с плавающей запятой в комплексных числах
np.complex128двойной комплекс16 байтдвойная точность в комплексных числах

Примеры типов данных NumPy

Теперь давайте разберемся, как используется конкретный тип данных numpy.

Пример № 1

Создание объекта типа данных

dt = np.dtype(np.int8)

Выход:

Пример № 2

Нахождение размера типа данных

dt = np.dtype(np.int8)
name = dt.name
sizeoftype = dt.itemsize
print('name:', name, 'size:', sizeoftype)

Выход:

Пример № 3

Создание объекта типа данных с использованием уникальных символов для каждого типа данных

Каждый тип данных в numpy имеет связанный символьный код, который однозначно идентифицирует его.

dt = np.dtype('i4')

Выход:

Пример № 4

Использование типов данных для создания структурированного массива

employee_info = np.dtype((('name', 'S10'), ('age', 'i1'), ('salary', 'f4'), ('rating', 'f4')))
print(employee_info)

Выход:

a = np.array((('Karthik', 31, 20000, 3.84), ('Rita', 25, 25123.34, 4.41)), dtype = employee_info)
print (a)

Выход:

Вывод

Numpy типы данных более или менее похожи на типы данных C. Они могут быть грубо разделены на следующие: bool, byte, int, float, double и complex. Хорошие программисты должны понимать, как данные хранятся и обрабатываются. Это может быть достигнуто путем эффективного понимания типов данных.

Рекомендуемые статьи

Это руководство по типам данных NumPy. Здесь мы обсуждаем, как конкретный тип данных numpy используется вместе с примерами. Вы также можете взглянуть на следующие статьи, чтобы узнать больше -

  1. Что такое NumPy?
  2. Matplotlib In Python
  3. Типы данных Python
  4. Словарь в Python