Введення в типи даних NumPy
Тип даних - це атрибут, пов’язаний з даними, який визначає вид значень, які дані можуть утримувати, вид операцій, які можна виконувати над ним, і найголовніше кількість необхідної їм пам'яті. Деякі з найбільш поширених типів даних - цілі, реальні, булеві та знакові. У цій статті ми зробимо спробу зрозуміти різні типи даних, підтримувані Numpy. Numpy - пакет пітонів, який використовується для наукових обчислень. Це суто написано мовою програмування С. Отже, можна припустити, що типи даних у Numpy - це більш-менш оновлення типів даних C.
Типові типи даних
Різні типи даних, що підтримуються numpy, є:
Типовий тип даних | Тісно пов'язаний тип даних C | Розмір зберігання | Опис |
np.bool_ | бул | 1 байт | може містити булеві значення, наприклад (True або False) або (0 або 1) |
np.byte | підписав чар | 1 байт | може містити значення від 0 до 255 |
np.ubyte | неподписаний char | 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 біта |
н.п. подвійний | подвійний | 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
Тепер давайте розберемося, як використовується певний тип даних з нумером.
Приклад №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)
Вихід:
Висновок
Облікові типи даних більш-менш схожі на типи даних C. Вони можуть бути приблизно класифіковані в bool, byte, int, float, double та complex. Хороші програмісти повинні зрозуміти, як зберігаються та маніпулюються даними. Цього можна досягти шляхом ефективного розуміння типів даних.
Рекомендовані статті
Це посібник щодо типів даних NumPy. Тут ми обговорюємо, як використовується певний тип даних, що містить нуди, разом із Прикладами. Ви також можете переглянути наступні статті, щоб дізнатися більше -
- Що таке NumPy?
- Matplotlib In Python
- Типи даних Python
- Словник в Python