Introduksjon til NumPy Datatyper
En datatype er et attributt assosiert med dataene som definerer typen verdier dataene kan inneholde, typen operasjoner som kan utføres på dem og viktigst av hvor mye minne som kreves av den. Noen av de veldig vanlige datatypene er heltall, ekte, boolsk og røye. I denne artikkelen vil vi gjøre et forsøk på å forstå forskjellige datatyper støttet av Numpy. Numpy er en pytonpakke som brukes til vitenskapelig databehandling. Det er rent skrevet på programmeringsspråket C. Derfor kan vi anta at datatyper i Numpy mer eller mindre er en oppgradering av C-datatyper.
Numpy datatyper
De forskjellige datatypene som støttes av numpy er:
Numpy datatype | Nært tilknyttet C-datatype | Lagringsstørrelse | Beskrivelse |
np.bool_ | bool | 1 byte | kan inneholde boolske verdier, som (sant eller usant) eller (0 eller 1) |
np.byte | signert røye | 1 byte | kan inneholde verdier fra 0 til 255 |
np.ubyte | usignert røye | 1 byte | kan inneholde verdier fra -128 til 127 |
np.short | signert kort | 2 byte | kan inneholde verdier fra -32, 768 til 32, 767 |
np.ushort | usignert kort | 2 byte | kan inneholde verdier fra 0 til 65, 535 |
np.uintc | usignert int | 2 eller 4 byte | kan inneholde verdier fra 0 til 65.535 eller 0 til 4.294.967.295 |
np.int_ | lang | 8 byte | kan inneholde verdier fra -9223372036854775808 til 9223372036854775807 |
np.uint | usignert lenge | 8 byte | 0 til 18446744073709551615 |
np.longlong | lenge lenge | 8 byte | kan inneholde verdier fra -9223372036854775808 til 9223372036854775807 |
np.ulonglong | usignert lenge lenge | 8 byte | 0 til 18446744073709551615 |
n.half / np.float16 | - | tillater halv flytepresisjon med Format: sign bit, 5 bit eksponent, 10 bit mantissa |
|
np.single | flyte | 4 byte | tillater presisjon på enkelt float Format: sign bit, 8 bit eksponent, 23 bit mantissa |
np.double | dobbelt | 8 byte | muliggjør dobbel flottørpresisjon Format: sign bit, 11 bit eksponent, 52 bit mantissa. |
np.longdouble | lang dobbel | 8 byte | utvidelse av flottør |
np.csingle | flottørkompleks | 8 byte | kan holde kompleks med ekte og imaginære deler opp til enkeltpresisjonsflyt |
np.cdouble | dobbeltkompleks | 16 byte | kan holde kompleks med ekte og imaginære deler opp til dobbeltpresisjonsflyt |
np.clongdouble | langt dobbeltkompleks | 16 byte | utvidelse av flottør for komplekst antall |
np.int8 | int8_t | 1 byte | kan inneholde verdier fra -128 til 127 |
np.int16 | int16_t | 2 byte | kan inneholde verdier fra -32, 768 til 32, 767 |
np.int32 | int32_t | 4 byte | kan inneholde verdier fra -2, 147, 483, 648 til 2, 147, 483, 647 |
np.int64 | int64_t | 8 byte | kan inneholde verdier fra -9223372036854775808 til 9223372036854775807 |
np.uint8 | uint8_t | 1 byte | kan inneholde verdier fra 0 til 255 |
np.uint16 | uint16_t | 2 byte | kan inneholde verdier fra 0 til 65, 535 |
np.uint32 | uint32_t | 4 byte | kan inneholde verdier fra 0 til 4 294 967 295 |
np.uint64 | uint64_t | 8 byte | kan inneholde verdier fra 0 til 18446744073709551615 |
np.intp | intptr_t | 4 byte | et signert heltall som brukes til indeksering |
np.uintp | uintptr_t | 4 byte | et usignert heltall som brukes til å holde en peker |
np.float32 | flyte | 4 byte | enkel flytepresisjon |
np.float64 | dobbelt | 8 byte | dobbel flytepresisjon |
np.complex64 | flottørkompleks | 8 byte | enkel flytepresisjon i komplekse tall |
np.complex128 | dobbeltkompleks | 16 byte | dobbel flytepresisjon i komplekse tall |
Eksempler på NumPy-datatyper
La oss nå forstå hvordan en bestemt numpy datatype brukes.
Eksempel 1
Opprette et datatypeobjekt
dt = np.dtype(np.int8)
Produksjon:
Eksempel 2
Finne størrelsen på en datatype
dt = np.dtype(np.int8)
name = dt.name
sizeoftype = dt.itemsize
print('name:', name, 'size:', sizeoftype)
Produksjon:
Eksempel 3
Opprette et datatypeobjekt ved hjelp av unike symboler for hver datatype
Hver datatype i numpy har en tilknyttet karakterkode som identifiserer den unikt.
dt = np.dtype('i4')
Produksjon:
Eksempel 4
Bruke datatyper for å lage en strukturert matrise
employee_info = np.dtype((('name', 'S10'), ('age', 'i1'), ('salary', 'f4'), ('rating', 'f4')))
print(employee_info)
Produksjon:
a = np.array((('Karthik', 31, 20000, 3.84), ('Rita', 25, 25123.34, 4.41)), dtype = employee_info)
print (a)
Produksjon:
Konklusjon
Numpy datatyper er mer eller mindre som C-datatypene. De kan grovt kategoriseres i en bool, byte, int, flyt, dobbel og kompleks. Det er et must for gode programmerere å forstå hvordan data lagres og manipuleres. Dette kan oppnås ved å forstå datatyper effektivt.
Anbefalte artikler
Dette er en guide til NumPy Datatyper. Her diskuterer vi hvordan en bestemt numpy datatype brukes sammen med eksemplene. Du kan også se på følgende artikler for å lære mer -
- Hva er NumPy?
- Matplotlib I Python
- Python datatyper
- Ordbok i Python