Johdanto NumPy-tietotyyppeihin
Tietotyyppi on dataan liittyvä attribuutti, joka määrittelee minkä tyyppisiä arvoja tiedot voivat pitää, millaisia toimintoja sillä voidaan suorittaa ja mikä tärkeintä, sen vaatiman muistitilan määrä. Jotkut hyvin yleisistä tietotyypeistä ovat kokonaisluku, todellinen, looginen ja char. Tässä artikkelissa yritetään ymmärtää erilaisia tietotyyppejä, joita Numpy tukee. Numpy on python-paketti, jota käytetään tieteelliseen laskentaan. Se on kirjoitettu puhtaasti C-ohjelmointikielellä. Voimme siis olettaa, että Numpyn tietotyypit ovat enemmän tai vähemmän C-tietotyyppien päivityksiä.
Numpy tietotyypit
Eri tietotyypit, joita numpy tukee, ovat:
Numpy tietotyyppi | Läheisesti C-tietotyyppi | Varastointikoko | Kuvaus |
np.bool_ | bool | 1 tavu | voi pitää loogisia arvoja, kuten (totta tai vääriä) tai (0 tai 1) |
np.byte | allekirjoitettu char | 1 tavu | voi pitää arvoja välillä 0 - 255 |
np.ubyte | allekirjoittamaton char | 1 tavu | voi pitää arvoja välillä -128 - 127 |
np.short | allekirjoitettu lyhyt | 2 tavua | voi pitää arvoja välillä -32 768 - 32 767 |
np.ushort | allekirjoittamaton lyhyt | 2 tavua | voi pitää arvoja välillä 0 - 65 535 |
np.uintc | allekirjoittamaton int | 2 tai 4 tavua | voi pitää arvoja välillä 0 - 65 535 tai 0 - 4 294 967 295 |
np.int_ | pitkä | 8 tavua | voi pitää arvoja -9223372036854775808 - 9223372036854775807 |
np.uint | allekirjoittamaton pitkä | 8 tavua | 0 - 18446744073709551615 |
np.longlong | pitkä pitkä | 8 tavua | voi pitää arvoja -9223372036854775808 - 9223372036854775807 |
np.ulonglong | allekirjoittamaton pitkä pitkä | 8 tavua | 0 - 18446744073709551615 |
np. half / np.float16 | - | sallii puoliarvon tarkkuuden Muoto: merkkibitti, 5 bitin eksponentti, 10 bitin mantissa |
|
np.single | kellua | 4 tavua | mahdollistaa yhden kelluvuuden tarkkuuden Muoto: merkkibitti, 8 bitin eksponentti, 23 bitin mantissa |
np.double | kaksinkertainen | 8 tavua | mahdollistaa kaksinkertaisen kelluvuuden tarkkuuden Muoto: merkkibitti, 11 bitin eksponentti, 52 bitin mantissa. |
np.longdouble | pitkä kaksinkertainen | 8 tavua | kelluksen jatkaminen |
np.csingle | kelluva kompleksi | 8 tavua | pystyy pitämään kompleksina todellisten ja kuvitteellisten osien kanssa yhden tarkkuuden kellua |
np.cdouble | kaksinkertainen kompleksi | 16 tavua | pystyy pitämään monimutkaisina todellisten ja kuvitteellisten osien kanssa kaksinkertainen tarkkuus kellua |
np.clongdouble | pitkä kaksinkertainen kompleksi | 16 tavua | kelluksen laajennus monimutkaiselle numerolle |
np.int8 | int8_t | 1 tavu | voi pitää arvoja välillä -128 - 127 |
np.int16 | int16_t | 2 tavua | voi pitää arvoja välillä -32 768 - 32 767 |
np.int32 | int32_t | 4 tavua | voi pitää arvoja välillä 2 147 483 648 - 2 147 483 647 |
np.int64 | int64_t | 8 tavua | voi pitää arvoja -9223372036854775808 - 9223372036854775807 |
np.uint8 | uint8_t | 1 tavu | voi pitää arvoja välillä 0 - 255 |
np.uint16 | uint16_t | 2 tavua | voi pitää arvoja välillä 0 - 65 535 |
np.uint32 | uint32_t | 4 tavua | voi pitää arvoja välillä 0 - 4 294 967 295 |
np.uint64 | uint64_t | 8 tavua | voi pitää arvoja välillä 0 - 18446744073709551615 |
np.intp | intptr_t | 4 tavua | indeksointiin käytetty allekirjoitettu kokonaisluku |
np.uintp | uintptr_t | 4 tavua | allekirjoittamaton kokonaisluku, jota käytetään osoittimen pitämiseen |
np.float32 | kellua | 4 tavua | yhden kelluvuuden tarkkuus |
np.float64 | kaksinkertainen | 8 tavua | kaksinkertainen kelluvuus tarkkuus |
np.complex64 | kelluva kompleksi | 8 tavua | yhden kelluvuuden tarkkuus monimutkaisina lukuina |
np.complex128 | kaksinkertainen kompleksi | 16 tavua | kaksinkertainen kelluvuuden tarkkuus monimutkaisina lukuina |
Esimerkkejä NumPy-tietotyypeistä
Ymmärretään nyt, kuinka tiettyä numpy-tietotyyppiä käytetään.
Esimerkki # 1
Tietotyyppiobjektin luominen
dt = np.dtype(np.int8)
lähtö:
Esimerkki 2
Tietotyypin koon löytäminen
dt = np.dtype(np.int8)
name = dt.name
sizeoftype = dt.itemsize
print('name:', name, 'size:', sizeoftype)
lähtö:
Esimerkki 3
Tietotyyppiobjektin luominen yksilöivillä symboleilla jokaiselle tietotyypille
Jokaisella numpy-tietotyypillä on liittyvä merkkikoodi, joka tunnistaa sen yksilöllisesti.
dt = np.dtype('i4')
lähtö:
Esimerkki 4
Tietotyyppien käyttö jäsennellyn taulukon luomiseen
employee_info = np.dtype((('name', 'S10'), ('age', 'i1'), ('salary', 'f4'), ('rating', 'f4')))
print(employee_info)
lähtö:
a = np.array((('Karthik', 31, 20000, 3.84), ('Rita', 25, 25123.34, 4.41)), dtype = employee_info)
print (a)
lähtö:
johtopäätös
Numpy-tietotyypit ovat enemmän tai vähemmän kuin C-tietotyypit. Ne voidaan luokitella karkeasti booliin, tavuun, int, float-, double- ja monimutkaisiin. Hyvien ohjelmoijien on ymmärrettävä, kuinka tietoja tallennetaan ja manipuloidaan. Tämä voidaan saavuttaa ymmärtämällä tietotyypit tehokkaasti.
Suositellut artikkelit
Tämä on opas NumPy-tietotyyppeihin. Tässä keskustellaan siitä, kuinka tiettyä numpy-tietotyyppiä käytetään yhdessä esimerkkien kanssa. Saatat myös katsoa seuraavia artikkeleita saadaksesi lisätietoja -
- Mikä on NumPy?
- Matplotlib Pythonissa
- Python-tietotyypit
- Sanakirja Pythonissa