Uvod u NumPy tipove podataka
Vrsta podataka je atribut povezan s podacima koji definira vrstu vrijednosti koju podaci mogu držati, vrstu operacija koje se na njima mogu izvoditi i najvažnije količinu memorijskog prostora koji je potreban. Neke od vrlo uobičajenih vrsta podataka su cjelobrojne, stvarne, boole i char. U ovom ćemo članku pokušati razumjeti različite vrste podataka koje podržava Numpy. Numpy je python paket koji se koristi za znanstveno računanje. Čisto je napisano programskim jezikom C. Stoga možemo pretpostaviti da su tipovi podataka u Numpyu manje ili više nadogradnja C tipova podataka.
Numpy Tipovi podataka
Različite vrste podataka podržane od numpy su:
Numpy vrsta podataka | Usko povezani tip podataka C | Veličina skladištenja | Opis |
np.bool_ | bool | 1 bajt | može sadržavati logičke vrijednosti, poput (istinito ili netočno) ili (0 ili 1) |
np.byte | potpisan char | 1 bajt | može sadržavati vrijednosti od 0 do 255 |
np.ubyte | nepotpisani znak | 1 bajt | može sadržavati vrijednosti od -128 do 127 |
np.short | potpisano kratko | 2 bajta | može sadržavati vrijednosti od -32, 768 do 32, 767 |
np.ushort | kratko potpisan | 2 bajta | može sadržavati vrijednosti od 0 do 65, 535 |
np.uintc | nepotpisani int | 2 ili 4 bajta | može sadržavati vrijednosti od 0 do 65, 535 ili 0 do 4, 294, 967, 295 |
np.int_ | dugo | 8 bajtova | može sadržavati vrijednosti od -9223372036854775808 do 9223372036854775807 |
np.uint | dugo potpisan | 8 bajtova | 0 do 18446744073709551615 |
np.longlong | dugo dugo | 8 bajtova | može sadržavati vrijednosti od -9223372036854775808 do 9223372036854775807 |
np.ulonglong | dugo potpisan dugo | 8 bajtova | 0 do 18446744073709551615 |
np.half / np.float16 | - | dopušta preciznost pola float sa Format: bitni znak, eksponent 5 bita, mantisa 10 bita |
|
np.single | plutati | 4 bajta | omogućuje preciznost jednostruke plovke Format: bitni znak, eksponent 8 bita, mantisa 23 bita |
np.double | dvostruko | 8 bajtova | omogućuje dvostruku preciznost plutanja Format: bitni znak, eksponent 11 bita, mantisa 52 bita. |
np.longdouble | duga dvostruka | 8 bajtova | produžetak plovka |
np.csingle | plutajući kompleks | 8 bajtova | može sadržavati složene s stvarnim i imaginarnim dijelovima do jednostruki plovak |
np.cdouble | dvostruki kompleks | 16 bajtova | može sadržavati složene s stvarnim i imaginarnim dijelovima do plovak dvostruke preciznosti |
np.clongdouble | dugačak dvostruki kompleks | 16 bajtova | produžetak plovka za složeni broj |
np.int8 | int8_t | 1 bajt | može sadržavati vrijednosti od -128 do 127 |
np.int16 | int16_t | 2 bajta | može sadržavati vrijednosti od -32, 768 do 32, 767 |
np.int32 | int32_t | 4 bajta | može sadržavati vrijednosti od -2, 147, 483, 648 do 2, 147, 483, 647 |
np.int64 | int64_t | 8 bajtova | može sadržavati vrijednosti od -9223372036854775808 do 9223372036854775807 |
np.uint8 | uint8_t | 1 bajt | može sadržavati vrijednosti od 0 do 255 |
np.uint16 | uint16_t | 2 bajta | može sadržavati vrijednosti od 0 do 65, 535 |
np.uint32 | uint32_t | 4 bajta | može sadržavati vrijednosti od 0 do 4, 294, 967, 295 |
np.uint64 | uint64_t | 8 bajtova | može sadržavati vrijednosti od 0 do 18446744073709551615 |
np.intp | intptr_t | 4 bajta | potpisan cijeli broj koji se koristi za indeksiranje |
np.uintp | uintptr_t | 4 bajta | nepotpisani cijeli broj koji se koristi za držanje pokazivača |
np.float32 | plutati | 4 bajta | preciznost jednostrukog plovka |
np.float64 | dvostruko | 8 bajtova | dvostruka preciznost plutanja |
np.complex64 | plutajući kompleks | 8 bajtova | preciznost jednostruke plovke u složenim brojevima |
np.complex128 | dvostruki kompleks | 16 bajtova | dvostruka preciznost plutanja u složenim brojevima |
Primjeri NumPy tipova podataka
A sada, shvatimo kako se koristi određena vrsta škakljivih podataka.
Primjer 1
Izrada objekta vrste podataka
dt = np.dtype(np.int8)
Izlaz:
Primjer 2
Pronalaženje veličine vrste podataka
dt = np.dtype(np.int8)
name = dt.name
sizeoftype = dt.itemsize
print('name:', name, 'size:', sizeoftype)
Izlaz:
Primjer 3
Izrada objekta podatkovne vrste pomoću jedinstvenih simbola za svaku vrstu podataka
Svaka vrsta podataka u numpi ima pridruženi znakovni kod koji ga jedinstveno identificira.
dt = np.dtype('i4')
Izlaz:
Primjer 4
Upotreba vrsta podataka za stvaranje strukturiranog niza
employee_info = np.dtype((('name', 'S10'), ('age', 'i1'), ('salary', 'f4'), ('rating', 'f4')))
print(employee_info)
Izlaz:
a = np.array((('Karthik', 31, 20000, 3.84), ('Rita', 25, 25123.34, 4.41)), dtype = employee_info)
print (a)
Izlaz:
Zaključak
Brojni tipovi podataka manje-više su slični tipovima podataka C. Mogu se grubo kategorizirati u bool, bajt, int, plutajući, dvostruki i složeni. Dobri programeri moraju shvatiti kako se podaci pohranjuju i manipuliraju. To se može postići učinkovitim razumijevanjem tipova podataka.
Preporučeni članci
Ovo je vodič za NumPy tipove podataka. Ovdje smo raspravljali o načinu na koji se određena vrsta podatnih podataka koristi zajedno s Primjerima. Možete također pogledati sljedeće članke da biste saznali više -
- Što je NumPy?
- Matplotlib In Python
- Tipovi podataka Pythona
- Rječnik na Pythonu