Введение в типы данных NumPy
Тип данных - это атрибут, связанный с данными, который определяет тип значений, которые могут храниться в данных, вид операций, которые могут быть выполнены с ним, и, что наиболее важно, объем памяти, необходимый для этого. Некоторые из наиболее распространенных типов данных являются целочисленными, действительными, логическими и char. В этой статье мы попытаемся понять различные типы данных, поддерживаемые Numpy. Numpy - это пакет Python, используемый для научных вычислений. Это чисто написано на языке программирования Си. Следовательно, мы можем предположить, что типы данных в Numpy более или менее являются обновлением типов данных C.
Типы данных Numpy
Numpy поддерживает следующие типы данных:
Тип данных Numpy | Тесно связанный тип данных C | Размер хранилища | Описание |
np.bool_ | BOOL | 1 байт | может содержать логические значения, например (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 | без знака int | 2 или 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.int8 | int8_t | 1 байт | может содержать значения от -128 до 127 |
np.int16 | int16_t | 2 байта | может содержать значения от -32, 768 до 32, 767 |
np.int32 | int32_t | 4 байта | может содержать значения от -2 147 483 648 до 2 147 483 647 |
np.int64 | int64_t | 8 байт | может содержать значения от -9223372036854775808 до 9223372036854775807 |
np.uint8 | uint8_t | 1 байт | может содержать значения от 0 до 255 |
np.uint16 | uint16_t | 2 байта | может содержать значения от 0 до 65 535 |
np.uint32 | uint32_t | 4 байта | может содержать значения от 0 до 4 294 967 295 |
np.uint64 | uint64_t | 8 байт | может содержать значения от 0 до 18446744073709551615 |
np.intp | intptr_t | 4 байта | целое число со знаком, используемое для индексации |
np.uintp | uintptr_t | 4 байта | целое число без знака, используемое для удержания указателя |
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 используется вместе с примерами. Вы также можете взглянуть на следующие статьи, чтобы узнать больше -
- Что такое NumPy?
- Matplotlib In Python
- Типы данных Python
- Словарь в Python